1.host 模式,使用docker run 时 使用--net=host 指定
docker 使用的网络和宿主机一样,在容器上看到的网卡ip就是宿主机上的ip
2.container 模式,使用--net=container:container_id/container_name (容器id或者容器名字) 多个容器使用共同的
网络,
看到的ip是一样的
3.none 模式 ,使用--net=none 指定
这种模式下,不会配置任何网络
4.bridge 模式,使用--net=bridge指定
默认模式下,不用指定默认就是这种网络模式。
这种模式会为每个容器分配一个独立的Network Namespace
类似于vmwae的nat网络。
同一个宿主机上的所有容器会在同一个网段下,相互之间是可以通信的。
docker:/root# docker exec -it 99037e5ed32e bash
bash-4.1# /sbin/ifconfig -a
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2595 errors:0 dropped:0 overruns:0 frame:0
TX packets:2120 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:10934454 (10.4 MiB) TX bytes:137500 (134.2 KiB)
类似于vmware的nat模式