我已经以这种方式设置 xen,以便我的所有虚拟机都有一个公共 IP 和一个私有 IP(192.168.0.x)。
但是,那些没有公共 IP 的虚拟机也应该可以访问互联网,所以我设置了 nat。
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
但是当我将此规则添加到 iptables 时,我无法再在其私有 IP 上 ping 通其他虚拟机,只能 ping 通具有 192.168.0.1 的 dom0。
只有当目标地址不在 192.168.0.x 网络上时才可以进行 NAT 吗?
答案1
当然,只需添加! -d 192.168.0.0/24
到上面列出的命令即可。不过,iptables
更常见的是MASQUERADE
通过传出接口(例如)进行限制。-o eth0