Docker网络
Docker服务安装完成之后,默认在每个宿主机会生成一个名称为docker0的网卡其IP地址都是172.17.0.1/16,并且会生成三种不能=同类型的网络
[11:02:55 [email protected] ~]#ifconfig docker0 docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255 inet6 fe80::42:fff:fef5:c936 prefixlen 64 scopeid 0x20<link> ether 02:42:0f:f5:c9:36 txqueuelen 0 (Ethernet) RX packets 46 bytes 6310 (6.3 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 66 bytes 8388 (8.3 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 [11:02:58 [email protected] ~]#docker network list NETWORK ID NAME DRIVER SCOPE f8bd89ab9ee6 bridge bridge local 33b7b13498f4 harbor_harbor bridge local 1faa19297211 host host local 13d0417a04ab none null local
docker网络类型:
Docker的网络使用docker network ls 命令看到有三种类型。
[11:02:58 [email protected] ~]#docker network list NETWORK ID NAME DRIVER SCOPE f8bd89ab9ee6 bridge bridge local 33b7b13498f4 harbor_harbor bridge local 1faa19297211 host host local 13d0417a04ab none null local Bridge:桥接,使用自定义IP Host:不获取IP直接使用物理机IP,并监听物理机IP监听端口 None:没有网络
Bridge模式:使用参数 -net=bridge指定,不指定默认就是bridge模式。
Host模式:host模式,使用参数 -net=host指定。
none模式:使用参数 -net-none指定
在使用none模式后,Docker容器不会进行任何网络配置,其没有网卡,没有IP也没有路由,因此默认无法与外界通信,需要手动添加网卡配置IP等,所以极少使用。