拒绝 IPv6 中的 ping 响应

拒绝 IPv6 中的 ping 响应

我想知道如何拒绝我的 ipv6 地址上的 ping 回复。我们一直在工作中处理 ipv6 上的 ping 泛洪问题,而阻止 icmp 请求的常用方法不起作用。

我已经尝试使用 imcp 文件夹(在 linux 中)中预装的脚本,但是 ipv6 没有相应的脚本。

我也尝试过通过 iptables 进行操作,但没有成功:

/sbin/iptables -A OUTPUT -p icmp -o eth0 -j ACCEPT
/sbin/iptables -A INPUT -p icmp –icmp-type echo-reply -s 0/0 -i eth0 -j ACCEPT
/sbin/iptables -A INPUT -p icmp –icmp-type destination-unreachable -s 0/0 -i eth0 -j ACCEPT
/sbin/iptables -A INPUT -p icmp –icmp-type time-exceeded -s 0/0 -i eth0 -j ACCEPT
/sbin/iptables -A INPUT -p icmp -i eth0 -j DROP

如果知道这是否可行以及如何适用于 win 和 mac OSX 机器那就好了。

答案1

首先,要提醒大家。丢弃某些类型的 ICMPv6 流量可能会彻底破坏您的网络。因此,在做任何事情时一定要小心谨慎,不要丢弃任何流量。RFC 4890是开始学习什么该做、什么不该做的好地方。

解决了这个问题...

您给出的示例iptables仅管理 IPv4 流量。IPv6 防火墙是独立的,通过 进行管理ip6tables

例如,如果你确实想丢弃传入的 ping,你可以执行以下操作(不推荐;请参阅 RFC):

ip6tables -A INPUT -p icmpv6 --icmpv6-type echo-request -j DROP

请参阅ip6tables手册页。上面的 RFC 还包括一些ip6tables示例配置。

相关内容