Re: ifconfig_bxe0_ipv6="inet6 accept_rtadv" seems to break bridging

From: Lexi Winter <ivy_at_freebsd.org>
Date: Thu, 24 Jul 2025 18:05:11 UTC
void:
> On Thu, 24 Jul 2025, at 14:08, Lexi Winter wrote:
> > you should set accept_rtadvd on the bridge interface, not the member
> > interface.  setting it on the member interface will try to assign the
> > SLAAC address to the member, which is not allowed.
 
> OK. Now the rc.conf looks like this:
> 
> cloned_interfaces="bridge0 tap0"                                                                                     
> ifconfig_bxe0="up"                                                                                                   
> ifconfig_bridge0="203.0.113.2/24 addm bxe0 addm tap0"                                                                
> defaultrouter="203.0.113.1"                                                                                          
> ifconfig_bridge0_ipv6="inet6 -ifdisabled auto_linklocal accept_rtadv"
> 
> Rebooted, same result - ipv4 has no route, ipv6 works.

this looks fine to me, so i'm not immediately sure what's going wrong
here.  i haven't extensively tested SLAAC on bridge but i did briefly
check that it worked and it did then.

could you please reboot into the broken configuration and send the
output of ifconfig for the bridge interface and all the member
interfaces, and also the output of 'netstat -rn'?

also, the relevant parts of the system boot log (/var/log/console.log,
if you have that enabled) might be informative; i mean specifically the
part where it configures the interfaces and adds routes.

> [1] the server gets 203.0.113.2 and ipv6 address, the tap gets 203.0.113.3/24
> (configured internally in the vm) i.e routable ipv4 configured manually, slaac
> autoconfig for everything. Work so far is just on the server.

just to confirm, when you say internally in the VM, you mean you are
assigning 203.0.113.3/24 to the vtnet0 interface (or whatever) inside
the VM, right?

so your address plan is something like this:

- 203.0.113.1: subnet router (accessible via bxe0)
- 203.0.113.2: this freebsd host
- 203.0.113.3: the bhyve guest (accessible via tap0)