Ok, think I figured it out.

My core problem was that I was assigning prefixes manually in rad.conf,
then assigning each interface an address *in the same prefix*. This
created some kind of conflict—the nature of which I still don't fully
understand.

This was the key line I missed in rad.conf(5):

> The default is to discover prefixes to announce by inspecting the IPv6
> addresses configured on an interface.

So as long as my interface has both addresses assigned in their
respective prefixes, rad can serve those without any extra
configuration.

Here's my final /etc/hostname.igc1:

    inet 192.168.1.1 255.255.255.0 NONE
    inet6 autoconf
    inet6 alias fdd0:c720:85fa:100::1 64

And my final /etc/rad.conf:

    interface igc1 {
      dns {
        nameserver {
          fdd0:c720:85fa:100::1
        }
      }
    }
    
Now devices on my network are getting both GUA and ULA addresses
assigned automatically through SLAAC.

Reply via email to