如何使用 iptables 阻止来自我的虚拟机的 ping?

如何使用 iptables 阻止来自我的虚拟机的 ping?

我有一台服务器KVM上运行着 4 个虚拟机。这些虚拟机只有一个接口,并且所有接口都连接到同一个OVS网桥。

我尝试使用以下 iptables 命令阻止这些虚拟机上的 ping

iptables -A OUTPUT -o ${tap_interface} -p icmp -m icmp --icmp-type 8 -j DROP

但是,它不起作用。然后我说,让我们从基础做起,阻止所有 ping 消息,甚至来自服务器的消息。所以我执行了:

iptables -A OUTPUT -p icmp -m icmp --icmp-type 8 -j DROP

现在的情况是,我的服务器无法 ping 通(我看到数据包符合上一条规则),但我的虚拟机仍然可以 ping 通。我不明白为什么虚拟机的流量会绕过规则。

答案1

路由时使用FORWARD表:

iptables -A FORWARD -p icmp -m icmp --icmp-type 8 -j DROP

相关内容