Docker本身在创建之初,就有自己的网络驱动器,叫container Network Manager(简称CNM),那本身这个CNM会支持多种模式。
1.网络
Null模式希望用户自己全权处理网络配置,它只帮你把网络的namespace给创建出来。
Host:我虽然创建了一个容器,但是我的容器进程没有自己独立的网络配置,我复用主机的网络。
Container:多个容器进程共用一个namespace
Bridge:Docker默认的网络驱动模式
Overlay的缺点:因为容器网络和主机网络是共用的,但容器对IP的消耗是巨大,这样对IP的规划有很高的要求
1.1 NULL模式
当我们装完docker以后,docker会在这一个主机上安装一个bridge设备(桥接设备),这个设备主要用于连接主机上所有容器的。它类似于集线器。
如果要让容器里面的网络跟主机网络进行通信,那么第一为这个容器配置网络,第二为这个容器的网络牵一根线出来到主机的Namespace,并且插在这个Docker0的bridge上。
1.2 默认模式--网桥和NAT
1.3 Underlay
局限性:必须要很好的规划好网络,因为对IP的消耗巨大