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.