Docker 容器作为两个 Docker 网桥之间的网关



我正在尝试使用 docker 模拟生产网络。

我有两个码头工人桥,bridge1bridge2.

我想在它们之间放置另一个 docker 容器作为router gateway

不确定以下命令,想这样做:

Router: (172.17.0.2)
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables -I FORWARD -s 192.168.9.0/24 -d 192.168.8.0/24 -j ACCEPT
iptables -I FORWARD -s 192.168.8.0/24 -d 192.168.9.0/24 -j ACCEPT

Bridge1:
ip route add 192.168.9.0/24 via 172.17.0.2 dev eth0

Bridge2:
ip route add 192.168.8.0/24 via 172.17.0.2 dev eth0

上面的命令正确吗? 但是我如何添加这些iptables规则,有些我无法更改它们。

您需要--cap-add=NET_ADMIN才能在 docker 容器中运行iptables命令。

阅读:https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities

最新更新