桥接 veth 虚拟网络和路由

桥接 veth 虚拟网络和路由

我正在尝试将三个 docker 容器连接到一个网络中并在它们之间运行 OSPF。我正在使用 veth 接口和网桥,尝试遵循这个答案。但是,我想我误解了它的工作原理。容器可以互相 ping 通,但不认为彼此在同一个网络中。

为了构建网络,我只使用了一个网桥和 3 个 veth 对。每对的一端在网桥上,另一端在容器中。这是我的配置。

ip tuntap add tapm mode tap
ip link set dev tapm up

ip link add brm type bridge
ip link set brm up

ip link set tapm master brm

ip addr add 2001:db9:4::1/64 dev brm

对于每个容器,重复下列操作三次(仅更改 veth 对的名称、地址和命名空间)

ip link add dev vn1 type veth peer name vn1br
ip link set dev vn1br up

ip link set vn1br master brm

ip link set vn1 netns ns-rt1
ip netns exec ns-rt1 ip addr add 2001:db9:4::2/64 dev vn1

ip netns exec ns-rt1 ip link set vn1 up

veth 网络是这样设置的吗?我需要多个桥接器或 Tap 接口吗?

答案1

我找到了问题。显然我需要为 OSPF 添加 iptables 规则。

ip6tables -I FORWARD -p 89 -j ACCEPT

相关内容