Hello All,
I am currently testing RFC4443 changes to ICMPv6 using the TAHI IPv6
Conformance Test for ICMPv6 Phase 1 (Tool Version 3.0.12, Test Program
Version 2.1.1). The test keeps failing on ICMPv6 Route Unreachable
(Test #6) when trying to determine if the NUT sends a valid Destination
Unreachable (code 0).
The sequence log for this test shows the following:
Start
Initialization
Start Caputring Packets (Link0)
Send Echo Request (Link-local address)
Receive Echo Reply (Link-local address)
TN created the entry of TN's link-local address to Neighbor cache of
NUT.
Send Echo Request (Global address)
Receive Echo Reply (Global address)
TN created the entry of TN's global address to Neighbor cache of
NUT.
Test
Send Echo Request to an offlink host
recv unexpected packet (ICMPv6 Neighbor Solicitation)
recv unexpected packet (ICMPv6 Neighbor Solicitation)
recv unexpected packet (ICMPv6 Neighbor Solicitation)
recv unexpected packet (ICMPv6 Dst Unreach Code 3)
RFC 2461 specifies:
Next-hop determination for a given unicast destination operates as
follows. The sender performs a longest prefix match against the
Prefix List to determine whether the packet's destination is on- or
off-link. If the destination is on-link, the next-hop address is the
same as the packet's destination address. Otherwise, the sender
selects a router from the Default Router List (following the rules
described in Section 6.3.6). If the Default Router List is empty,
the sender assumes that the destination is on-link.
Going by the above RFC, the IPv6 stack always tries to find a route by
sending Neighbor Solicitations out of the same interface where a packet
destined to an off-link host arrived. I would like to know why the TAHI
Test Suite thinks sending this NS packet is illegal. Can someone help
me determine where the problem is?
Thanks,
Subramani