> On 13 March 2021, at 17:03, Doug Hardie <d...@sermon-archive.info> wrote: > > I have two systems on the same ethernet. One is configured as a router, the > other as a host. rtadvd is running on the router, rtsold on the host, and > route6d on both. The router was up and running and I initiated tcpdump of > ip6 packets on the interface. Then I booted the host. The results are > interesting: > > 22:26:17.963393 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 16) > fe80::aa60:b6ff:fe1d:8dbc > ff02::2: [icmp6 sum ok] ICMP6, router > solicitation, length 16 > source link-address option (1), length 8 (1): a8:60:b6:1d:8d:bc > 0x0000: 6000 0000 0010 3aff fe80 0000 0000 0000 > 0x0010: aa60 b6ff fe1d 8dbc ff02 0000 0000 0000 > 0x0020: 0000 0000 0000 0002 8500 a2b8 0000 0000 > 0x0030: 0101 a860 b61d 8dbc > > 22:26:17.997455 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 56) > fe80::3e18:a0ff:fe44:765b > ff02::1: [icmp6 sum ok] ICMP6, router > advertisement, length 56 > hop limit 64, Flags [none], pref medium, router lifetime 1800s, > reachable time 0ms, retrans timer 0ms > source link-address option (1), length 8 (1): 3c:18:a0:44:76:5b > prefix info option (3), length 32 (4): fec2::/64, Flags [onlink, > auto], valid time 2592000s, pref. time 604800s > 0x0000: 6000 0000 0038 3aff fe80 0000 0000 0000 > 0x0010: 3e18 a0ff fe44 765b ff02 0000 0000 0000 > 0x0020: 0000 0000 0000 0001 8600 8356 4000 0708 > 0x0030: 0000 0000 0000 0000 0101 3c18 a044 765b > 0x0040: 0304 40c0 0027 8d00 0009 3a80 0000 0000 > 0x0050: fec2 0000 0000 0000 0000 0000 0000 0000 > > 22:26:18.011402 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32) :: > > ff02::1:ff00:210: [icmp6 sum ok] ICMP6, neighbor solicitation, length 32, > who has fec2::210 > unknown option (14), length 8 (1): > 0x0000: cc1a 5611 b76a > 0x0000: 6000 0000 0020 3aff 0000 0000 0000 0000 > 0x0010: 0000 0000 0000 0000 ff02 0000 0000 0000 > 0x0020: 0000 0001 ff00 0210 8700 9025 0000 0000 > 0x0030: fec2 0000 0000 0000 0000 0000 0000 0210 > 0x0040: 0e01 cc1a 5611 b76a > > 22:26:18.098774 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32) :: > > ff02::1:ff1d:8dbc: [icmp6 sum ok] ICMP6, neighbor solicitation, length 32, > who has fec2::aa60:b6ff:fe1d:8dbc > unknown option (14), length 8 (1): > 0x0000: c983 4557 f1d3 > 0x0000: 6000 0000 0020 3aff 0000 0000 0000 0000 > 0x0010: 0000 0000 0000 0000 ff02 0000 0000 0000 > 0x0020: 0000 0001 ff1d 8dbc 8700 f218 0000 0000 > 0x0030: fec2 0000 0000 0000 aa60 b6ff fe1d 8dbc > 0x0040: 0e01 c983 4557 f1d3 > > The first packet is the host sending a router solicitation. The second is > the router responding with the advertisement with the various routes it has. > The third and fourth packets appear to be the Duplicate Address Detection > packets for the two addresses on the host. There is no response to either. > After this, a number of other packets continue on and on. > > The question is, why are the host addresses being used before DAD is > attempted? It appears there could be some really interesting problems if the > link-layer address actually was duplicated. The problems would happen before > DAD was even attempted?
I reduced the configuration to the host settings: ifconfig_bge0_ipv6="inet6 accept_rtadv" The router to: ifconfig_ue0_ipv6="up" Ran tcpdump on the router (obviously not acting as a router) and restarted the host. Got the following: tcpdump: listening on ue0, link-type EN10MB (Ethernet), capture size 262144 bytes 19:05:00.048637 IP6 (hlim 1, next-header Options (0) payload length: 56) fe80::aa60:b6ff:fe1d:8dbc > ff02::16: HBH (padn)(rtalert: 0x0000) [icmp6 sum ok] ICMP6, multicast listener report v2, 2 group record(s) [gaddr ff02::2:ec7d:574c to_ex, 0 source(s)] [gaddr ff02::2:ffec:7d57 to_ex, 0 source(s)] 19:05:00.171029 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 16) fe80::aa60:b6ff:fe1d:8dbc > ff02::2: [icmp6 sum ok] ICMP6, router solicitation, length 16 source link-address option (1), length 8 (1): a8:60:b6:1d:8d:bc 19:05:04.198640 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 16) fe80::aa60:b6ff:fe1d:8dbc > ff02::2: [icmp6 sum ok] ICMP6, router solicitation, length 16 source link-address option (1), length 8 (1): a8:60:b6:1d:8d:bc 19:05:08.449844 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 16) fe80::aa60:b6ff:fe1d:8dbc > ff02::2: [icmp6 sum ok] ICMP6, router solicitation, length 16 source link-address option (1), length 8 (1): a8:60:b6:1d:8d:bc The first packet is a multicast listener report. However, as I understand RFC 3590 section 3 <http://tools.ietf.org/html/rfc3590#section-3>, That should have been sent using the :: address, not the link-local address as the link-local address is still tentative. Then follows 3 packets that look like DAD. However, they also come from the tentative link-local address. I believe they should come from :: also, at least the first one. There is not a lot of time between the first two. These two devices are the only ones on that LAN so nothing is going to respond. Is this a bug in the software, or in my understanding? -- Doug _______________________________________________ freebsd-net@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"