Loading...

docker新建自定义网桥,实现不同主机容器互联

不同主机间的容器网络互联,网络上的所有教程都是通过open vswitch等虚拟网桥方式实现的,但是最近本人发现可以直接通过配置网桥实现网络的互联,而不用安装配置open vswitch。在这里分享一下。

实验环境:

宿主机1:192.168.52.128

宿主机2:192.168.52.135

添加新的自定义网桥。


# 宿主机1:

brctl addbr br0

ip addr add 192.168.110.1/24 dev br0

ip link set dev br0 up

为了使新建的网桥永久化,创建网桥接口文件:

vi /etc/sysconfig/network-scripts/ifcfg-br0

DEVICE=br0

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.111.1

NETMASK=255.255.255.0

USERCTL=no

TYPE=Bridge

# 宿主机2:

brctl addbr br0

ip addr add 192.168.111.1/24 dev br0

ip link set dev br0 up

vi /etc/sysconfig/network-scripts/ifcfg-br0

DEVICE=br0

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.110.1

NETMASK=255.255.255.0

USERCTL=no

TYPE=Bridge

宿主机删除docker0网桥,并修改docker默认网桥为br0。


ip link set dev docker0 down

brctl delbr docker0

vi /etc/sysconfig/docker

other_args="-b=br0"

service docker restart

网络信息如下:

测试网络:

以上为在128创建的容器,网络段为192.168.111.0。192.168.11.100为在135上创建的容器地址。以上测试可以看到,128和135主机间的容器实现了互通。

要注意主机开始了路由功能:

cat /proc/sys/net/ipv4/ip_forward

最好关闭NetworkManager服务,不然创建网桥时可能会失败。

posted @ 2021-03-26 11:05  高宏宇  阅读(265)  评论(0编辑  收藏  举报