Bugzilla – Bug 1390
ICMPv6 Redirect are handled correctly only for /64 networks
Last modified: 2013-06-16 05:16:27 UTC
The bug is rather obscure, so using an example. Let's use this network: A-----B-----C A's IPV6 address is 2001:db8:1::1/64 B's IPV6 addresses are 2001:db8:1::2/64 and 2001:db8:2::2/64 C's IPV6 address is 2001:db8:2::1/64 All goes fine. However, if the IPv6 addresses are as follows: A's IPV6 address is 2001:db8:cafe:f00d:1::1/80 B's IPV6 addresses are 2001:db8:cafe:f00d:1::2/80 and 2001:db8:cafe:f00d:2::2/80 C's IPV6 address is 2001:db8:cafe:f00d:2::1/80 THEN for each packet forwarded by node B, an ICMPv6 Redirect is sent (erroneously). The solution to this issue is all but trivial. However now the issue is documented, thus it's a feature.
As a workaround, one can disable ICMPv6 Redirect using the Ipv6L3Protocol's attribute "SendIcmpv6Redirect" (added in changeset 7793 - 1c81a8a91b1e). Leaving the bug open as the behavior is not the intended one anyway.
Hi Tommaso, I think This will happen because the prefix can only be 64 right now, you can reference the function of SetBase() of file src/internet/helper/ipv6-address-helper.cc Best Regards gwshi
Hi gwshi, yep, it's my same idea. The issue involves aslo the RT behaviour tho. Without CIDR handling and/or DHCPv6 the actual behaviour isn't a big issue. The bug, however is open as a future reference. It should be fixed but, right now, we miss also a case where it's strongly needed. Cheers, T.
*** This bug has been marked as a duplicate of bug 1697 ***