Hey Stefan, Toke, I spent the day playing around with bird and babel and sorted out FreeBSD's v6 situation. Basically, ff00::/8 addresses are treated differently, and they're blocked unless the interface sets IFF_MULTICAST. So I've committed https://git.zx2c4.com/wireguard-freebsd/commit/?id=a7a84a17faf784857f076e37aa4818f6b6c12a95 to do this. We _could_ also set IFF_BROADCAST, which would translate to babel enabling IF_MULTICAST, but so far I can't see how this would help anything real, and combined with Toke's patch -- https://bird.network.cz/pipermail/bird-users/2021-April/015415.html -- I think we're actually in a good situation. Seeing that this now works, I've also dropped the link1 hack and put that in a branch in case it becomes useful later.
Bernhard (decke@) is CC'd here in case he'd like to get some of this into ports early for your use case. Specifically, this involves: 1) https://bird.network.cz/pipermail/bird-users/2021-April/015415.html for the bird2 package. 2) https://git.zx2c4.com/wireguard-freebsd/patch/?id=a7a84a17faf784857f076e37aa4818f6b6c12a95 for the wireguard-kmod package. Stefan - please let me know if those work for you. In my testing thus far, things seem to work for me. Long term, we'll certainly want to have Toke's planned support for direct WireGuard peering inside of bird. Regards, Jason
