除了 unspecified(::/128) 或 link-local(fe80::/10) 之外,ICMPv6 消息类型 133、135 和 136 的源地址是什么时候?

网络工程 防火墙 ipv6 民进党
2021-07-29 20:25:55

根据rfc4861,Router Solicitation(ICMPv6 type 133)、Neighbor Solicitation(ICMPv6 type 135)和Neighbor Advertisement(ICMPv6 type 136)的源地址可以是an address assigned to the interface我是否正确,该地址也可以是链接本地(fe80::/10)地址以外的任何其他地址?我问的原因是我正在研究入口防火墙,当我研究示例过滤器(例如rfc6192)时,NDP 协议的源地址不受限制。

1个回答

源地址不限于链接本地,您不应该依赖它,根据您自己的来源。一个很好的用例是加快邻居缓存的数量。如果您发送 ND,您可以包含一个可以绑定到发送源 IP 的源链路层地址(通常是 MAC)。这可用于在任何接收节点上预填充邻居缓存(条目将不稳定,但这是一个无关紧要的技术细节)。因此,例如在请求 GUA 邻居时,如果可用,在该接口上使用来自相同前缀的分配的 GUA 源实际上是有意义的。

还有一个信息性 RFC 4890 可以帮助处理这些事情。相关的是4.3和4.4节,你会看到类似的结论,区别在于ICMPv6类型和目的地(即中转/本地)。不过需要注意的是,这个 RFC 作为帮助很有用,但它是信息性的,不要太从字面上理解(它显然是从特定类型的防火墙的角度编写的,当然并不适用于一般情况)。