It's one thing setting up #IPv6 the way you want it, but having #FreeBSD jails on the bridge whose member is egress was another level for me. First, having #DHCPv4, #DHCPv6 and #SLAAC on the same network was somewhat hard to achieve. Then came filtering. The hard part about it is how to drop everything on the host, but not drop packets which flow towards jails. After a while, I learned PF has <self>. And then I learned that fe80::/10 is special, and in what way is it special. The result is current pf.conf template I came up with: https://github.com/cbsd/reggae/blob/master/templates/pf.conf
When all that started working, I wanted my isc-dhcpd and isc-dhcpd6 to register A and AAAA records in nsd. The result of that effort is https://github.com/cbsd/reggae/blob/master/templates/reggae-register.sh and it is far from perfect. I set myself a goal of not using anything outside base OS, so it took a while to handle IPv6 addresses.
If you're asking your self why i did all this, it's because I wanted to learn about dual stack and what are the problems. I am by no means network engineer, only a sys admin who decided to learn more about networking.
#ipv6 #freebsd #DHCPv4 #dhcpv6 #slaac