IPv6 - 允许传入的 ICMP 回显请求

lig*_*txx 6 ipv6 icmp icmpv6

因此,我们最近从 LIR 获得了 /48 前缀,并开始在实验室中进行小规模部署。

让我感到奇怪的是,像http://ipv6-test.com/这样的网站坚持要求您允许传入的 ICMP Echo 请求。我明白为什么你应该允许 ICMPv6 传出,但传入?即使它只是一个ping?

所以,我的问题是:除了可能使用 ICMP 的 DDoS 攻击之外,允许传入的 ICMP 回声请求是否有任何缺点?

我阅读了 RFC4890 ( https://www.ietf.org/rfc/rfc4890.txt ),但在那里找不到明确的答案。

A.5. ICMPv6 回声请求和回声响应

表明

人们认为对设计良好的 IPv6 网络(参见第 3.2 节)进行扫描攻击不会带来重大风险,因此默认情况下应允许连接检查。

鉴于 RFC 已经快 10 年了,这一点仍然有效吗?此外,RFC 不区分传出和传入方向。

我一直觉得 v4 的建议是在网关阻止 ICMP,但话说回来,v6 严重依赖 ICMP。

那么,有什么建议吗?

San*_*ann 7

第一点不是对您问题的直接回答。我只是将它包含在这里,供其他没有意识到 ICMPv6 重要性的人使用。

IPv6 确实需要某些 ICMP 消息类型才能通过。最重要的是 Packet-Too-Big 和 Parameter-Problem。如果您阻止这些,那么您将遇到连接问题。

另外:ARP 的 IPv6 等效项是邻居发现,它也使用 ICMP 数据包。无状态自动配置是邻居发现的一部分,因此也需要 ICMP。

在 IPv4 中存在一种误解,即所有传入的 ICMP 都应该被阻止,而您可以避免这样做。使用 IPv6,您确实需要至少允许一些 ICMP。看看https://tools.ietf.org/html/rfc4890,它包含一些关于如何在不破坏协议的情况下过滤 ICMP 的非常好的建议。

您的问题 Blocking Incoming ICMP echo requests的答案很好。我个人不这样做,因为允许它们使调试更容易,但如果您不想允许它们进入,则不必这样做。如果您允许他们进入,您面临的主要风险是,如果有人为您的笔记本电脑找到了一个稳定的(非临时/隐私)地址,那么他们可以继续 ping 它以查看它何时打开。这可能被视为隐私风险。不过,他们必须首先找到这样的地址,因为对于传出连接,它将使用其临时隐私地址。

  • 我想我没有看到 Parameter-Problem 在任何正常的通信中使用,所以我很好奇你认为如果它被阻止会破坏什么。 (3认同)