Docker容器的网络基础-自定义虚拟网桥
root@ubuntu:~# ifconfig
br0 Linkencap:Ethernet HWaddr00:00:00:00:00:00
inet addr:192.168.100.1 Bcast:0.0.0.0 Mask:255.255.255.0
inet6 addr: fe80::f402:8aff:fe15:e26c/64 Scope:Link
UPBROADCAST MULTICAST MTU:1500 Metric:1
RXpackets:25 errors:0 dropped:0 overruns:0 frame:0
TXpackets:54 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RXbytes:1596 (1.5 KB) TX bytes:8191 (8.1KB)
bridge0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
inet addr:192.168.5.1 Bcast:0.0.0.0 Mask:255.255.255.0
inet6 addr: fe80::ac52:20ff:fe82:f107/64 Scope:Link
UPBROADCAST MULTICAST MTU:1500 Metric:1
RXpackets:6891 errors:0 dropped:0 overruns:0 frame:0
TX packets:9322 errors:0 dropped:0overruns:0 carrier:0
collisions:0 txqueuelen:0
RXbytes:280863 (280.8 KB) TXbytes:24628712 (24.6 MB)
eth0 Link encap:Ethernet HWaddr00:0c:29:d7:5c:be
inet addr:192.168.2.9 Bcast:192.168.2.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fed7:5cbe/64 Scope:Link
UPBROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RXpackets:1645453 errors:0 dropped:0 overruns:0 frame:0
TXpackets:400249 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RXbytes:388740529 (388.7 MB) TXbytes:27437145 (27.4 MB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UPLOOPBACK RUNNING MTU:65536 Metric:1
RXpackets:157 errors:0 dropped:0 overruns:0 frame:0
TXpackets:157 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RXbytes:27669 (27.6 KB) TX bytes:27669(27.6 KB)
查看目前的网桥,并删除
root@ubuntu:~# brctl show
bridge name bridgeid STP enabled interfaces
br0 8000.000000000000 no
bridge0 8000.000000000000 no
停止docker服务
root@ubuntu:~#service docker stop
删除没用的网卡
用ip命令使br0网卡down掉
root@ubuntu:~# ip link set dev br0 down
删除网卡
root@ubuntu:~# brctl delbr br0
用ip命令使bridge0网卡down掉
root@ubuntu:~# ip link set dev bridge0 down
删除网卡
root@ubuntu:~# brctl delbr bridge0
root@ubuntu:~# brctl show
bridge name bridgeid STP enabled interfaces
root@ubuntu:~#ifconfig
eth0 Link encap:Ethernet HWaddr00:0c:29:d7:5c:be
inet addr:192.168.2.9 Bcast:192.168.2.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fed7:5cbe/64 Scope:Link
UPBROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RXpackets:1653100 errors:0 dropped:0 overruns:0 frame:0
TXpackets:407465 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:389207878(389.2 MB) TX bytes:27888027 (27.8 MB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UPLOOPBACK RUNNING MTU:65536 Metric:1
RXpackets:157 errors:0 dropped:0 overruns:0 frame:0
TXpackets:157 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RXbytes:27669 (27.6 KB) TX bytes:27669(27.6 KB)
root@ubuntu:~#
创建一个网卡 名字是br100
root@ubuntu:~#brctl addbr br100
ip地址和子网
root@ubuntu:~#ip addr add 192.168.100.1/24 dev br100
启动桥接网卡
root@ubuntu:~#ip link set dev br100 up
写入配置
root@ubuntu:~#echo 'DOCKER_OPTS="-b=b100"' >> /etc/default/docker
root@ubuntu:~# cat /etc/default/docker
......
DOCKER_OPTS="-b=br100"
......
root@ubuntu:~#
root@ubuntu:~#service docker start
启动一个容器
root@ubuntu:~#docker run -i -t ubuntu /bin/bash
root@0afa34db9649:/# apt-get update
root@0afa34db9649:/# apt-get install net-tools -y
root@0afa34db9649:/# ifconfig
eth0 Link encap:Ethernet HWaddr02:42:c0:a8:64:02
inet addr:192.168.100.2 Bcast:0.0.0.0 Mask:255.255.255.0
inet6 addr: fe80::42:c0ff:fea8:6402/64 Scope:Link
UPBROADCAST RUNNING MTU:1500 Metric:1
RXpackets:6336 errors:0 dropped:0 overruns:0 frame:0
TXpackets:4565 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RXbytes:24637916 (24.6 MB) TX bytes:254269(254.2 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UPLOOPBACK RUNNING MTU:65536 Metric:1
RXpackets:0 errors:0 dropped:0 overruns:0 frame:0
TXpackets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RXbytes:0 (0.0 B) TX bytes:0 (0.0 B)
root@0afa34db9649:/#