![如何配置 iptables 以将数据从网络接口传递到网桥?](https://linux22.com/image/730148/%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%20iptables%20%E4%BB%A5%E5%B0%86%E6%95%B0%E6%8D%AE%E4%BB%8E%E7%BD%91%E7%BB%9C%E6%8E%A5%E5%8F%A3%E4%BC%A0%E9%80%92%E5%88%B0%E7%BD%91%E6%A1%A5%EF%BC%9F.png)
我在一台 CentOS7.4 机器上搭建了一个 openstack 一体机环境,由于某些原因我只有一个网络接口(eth0)和一个 ip 地址,所以我创建了一个 linux 网桥(br0),并使用 iptables 命令将数据转发到 eth0:
iptables -t nat -A POSTROUTING -s {bridge virtual ip} -j SNAT --to {eth0 ip}
但似乎不起作用。
当我从 br0 ping 到 8.8.8.8 并运行 tcpdump 时,我可以看到数据可以转发到 eth0 并发送到 8.8.8.8,但是当数据发送回 eth0 时,它们不能转发到 br0。
Ip forwarding
,net.bridge.bridge-nf-call-iptables
并net.bridge.bridge-nf-call-ip6tables
设置为1。
我该如何解决这个问题?