On Wed, Dec 16, 2020 at 02:37:19PM -0800, Jordan Geoghegan wrote: > Hi folks, > > I've found some surprising behaviour in the 'dig' utility. I've noticed that > dig doesn't seem to support link local IPv6 addresses. I've got unbound > listening on a link local IPv6 address on my router and all queries seem to > be working. I'm advertising this DNS info with rad, and I confirmed with > tcpdump that my devices such as iPhones, Macs, Windows, Linux desktops etc > are all properly querying my unbound server over IPv6. > > dhclient doesn't seem to allow you to specify an IPv6 address in it's > 'supersede' options, so I manually edited my OpenBSD desktops resolv.conf > to specify the IPv6 unbound server first. Again, I confirmed with tcpdump > that my desktop was properly querying the unbound server over IPv6 (ie > Firefox, ping, ssh etc all resolved domains using this server). > > I used 'dig' to make a query, and I noticed it was ignoring my link local > IPv6 nameserver in my resolv.conf. I'll save you guys the long form Ted talk > here and just make my point: > > $ cat resolv.conf > nameserver fe80::f29f:c2ff:fe17:b8b2%em0 > nameserver 2606:4700:4700::1111 > lookup file bind > family inet6 inet4 > > $ dig google.ca > [snip] > ;; Query time: 12 msec > ;; SERVER: 2606:4700:4700::1111#53(2606:4700:4700::1111) > [snip] > > There's a bit of a delay as it waits for a time out, and then it falls back > to the cloudflare IPv6 server. > > I tried specifying the server with '@' as well as specifying source > IP/interface with '-I' to no avail. It seems dig really doesn't like the > 'fe80::%em0' notation, as '@' and '-I' worked fine when used without a > link-local address. > > Is this a bug or a feature? Am I just doing something stupid? Any insight > would be appreciated.
I think it is a bug and I can reproduce. Will invesigate deeper later. -Otto