zoukankan      html  css  js  c++  java
  • docker 网络

    四类网络模式

    Docker网络模式配置说明
    host –net=host 容器和宿主机共享Network namespace。
    container –net=container:NAME_or_ID 容器和另外一个容器共享Network namespace。 kubernetes中的pod就是多个容器共享一个Network namespace。
    none –net=none 容器有独立的Network namespace,但并没有对其进行任何网络设置,如分配veth pair 和网桥连接,配置IP等。
    bridge –net=bridge (默认为该模式)

    host模式

           如果启动容器的时候使用host模式,那么这个容器将不会获得一个独立的Network Namespace,
    而是和宿主机共用一个Network Namespace。容器将不会虚拟出自己的网卡,配置自己的IP等,
    而是使用宿主机的IP和端口。
    但是,容器的其他方面,如文件系统、进程列表等还是和宿主机隔离的。

           使用host模式的容器可以直接使用宿主机的IP地址与外界通信,容器内部的服务端口也可以使用宿主机的端口,
    不需要进行NAT,host最大的优势就是网络性能比较好,
           但是docker host上已经使用的端口就不能再用了,网络的隔离性不好。

    Host模式如下图所示:

     
     

    bridge模式

           当Docker进程启动时,会在主机上创建一个名为docker0的虚拟网桥,
    此主机上启动的Docker容器会连接到这个虚拟网桥上。虚拟网桥的工作方式和物理交换机类似,
    这样主机上的所有容器就通过交换机连在了一个二层网络中。

           从docker0子网中分配一个IP给容器使用,并设置docker0的IP地址为容器的默认网关。
    在主机上创建一对虚拟网卡veth pair设备,Docker将veth pair设备的一端放在新创建的容器中,
    并命名为eth0(容器的网卡),另一端放在主机中,以vethxxx这样类似的名字命名,
    并将这个网络设备加入到docker0网桥中。可以通过brctl show命令查看。

    bridge模式是docker的默认网络模式,不写--net参数,就是bridge模式。使用docker run -p时,
    docker实际是在iptables做了DNAT规则,实现端口转发功能。可以使用iptables -t nat -vnL查看。

    bridge模式如下图所示:

    container模式

    这个模式指定新创建的容器和已经存在的一个容器共享一个 Network Namespace,而不是和宿主机共享。
    新创建的容器不会创建自己的网卡,配置自己的 IP,而是和一个指定的容器共享 IP、端口范围等。
    同样,两个容器除了网络方面,其他的如文件系统、进程列表等还是隔离的。两个容器的进程可以通过 lo 网卡设备通信。

    Container模式示意图:

    none模式

    使用none模式,Docker容器拥有自己的Network Namespace,但是,并不为Docker容器进行任何网络配置。
    也就是说,这个Docker容器没有网卡、IP、路由等信息。需要我们自己为Docker容器添加网卡、配置IP等。

    这种网络模式下容器只有lo回环网络,没有其他网卡。
    none模式可以在容器创建时通过--network=none来指定。
    这种类型的网络没有办法联网,封闭的网络能很好的保证容器的安全性。

    None模式示意图:







  • 相关阅读:
    天才AI少年范浩强坚信“弄斧要到班门”
    向Excel说再见,神级编辑器统一表格与Python
    疯狂脑机接口计划:马斯克的 “读心术”
    Jenkins 学习资料
    VMware: windows8 与 虚拟机ubuntu 14.04 共享文件夹
    [转载]一个老软件测试工程师的日志
    python 解析 配置文件
    借助github搭建自己的博客
    [转载]你需要知道的 16 个 Linux 服务器监控命令
    [转载]Linux服务器性能评估与优化
  • 原文地址:https://www.cnblogs.com/centos2017/p/12119067.html
Copyright © 2011-2022 走看看