我最近注意到我的 IPv6 多播流量被广播到所有连接到交换机的主机,即使是那些没有订阅流量的主机。
为了解决这个问题,我在交换机上启用了 MLD 监听,这解决了这个问题 - 现在只有那些订阅了给定多播组的主机才能接收流量,太好了。
然而,这破坏了网络上的基本 IPv6 功能,我无法再连接到(甚至 ping)连接到同一台交换机的主机。
问题原来是 IPv6 邻居请求数据包被发送到ff02::1:xxxx:xxxx
交换机没有转发的形式的多播地址,因为它似乎决定没有人订阅这些多播组。
我的问题是,这是交换机 IPv6 固件中的错误,是因为我没有正确配置 MLD 侦听,还是因为我需要配置每个主机以发送那些特定多播组的 MLD 订阅?
我不确定 MLD 侦听和这些 IPv6 消息的正确行为是什么。主机是要订阅这些组,还是交换机要转发这些请求?如果要始终转发它们,那么所有寻址到的数据包ff02::/16
是要转发而无需订阅,还是仅转发 ICMP6 流量?交换机确实在ff02::1
没有任何订阅的情况下转发类似地址的数据包,这让我认为您不应该订阅此流量,但是我发现很难相信几乎立即中断所有 IPv6 流量的某些东西会被忽视这么久。
不幸的是,该交换机早已停止支持并且不再获得固件更新(Cisco 2975),但在我开始更换它之前,我想确保它实际上是一个固件错误,而不是我刚刚配置错误的东西即使使用新开关也保持不变!