Hello all -

I don't feel this warrants a bug report, but nevertheless feel that this
behavior is inconsistent with the way dhclient works.  I have a vultr
server running nsd/OpenBSD 6.2, and I suspect that the move to slaacd
from kernel code in 6.1 is what has broken my nsd config (it fails to
start on boot now).

Vultr uses dhcp/autoconf for ipv4/ipv6, and nsd worked perfectly on
OpenBSD 6.1.  In my nsd.conf, I specify the outbound ipv4/ipv6
addresses, and the idea is that the interface addresses are assigned
before nsd is started.  This was the case in oBSD 6.1.  However, in 6.2,
it seems that slaacd is assigning the ipv6 address after nsd starts.
This leads to error messages such as:

nsd[15166]: xfrd: could not bind source address:port to socket: Can't assign 
requested address

I've gotten around this by using the ipv4 address for xfr's, and having
nsd listen on ::1@8053 (unbound has :53) for ipv6 & redirecting with pf.

I *think* the proper behavior should be that daemons wait on slaacd to
attempt to solicit/bind first, similar to dhclient.

I do admit that I've been tinkering with ipv6 a lot lately and twisting
all the knobs, but hopefully this is helpful info as we transition more
ipv6 dominant internet.

Reply via email to