if_bridge(): IPv6 EUI-64 seemingly not working

From: A FreeBSD User <freebsd_at_walstatt-de.de>
Date: Wed, 11 Jun 2025 05:28:09 UTC
Hello development folks,

after the announcement not supporting set IPs on NICS member of a bridge I tried to switch on
all of my administered CURRENT and 14 boxes towards the proposed scheme - with different
results.

Background: several boxes sit behind dynamically changing uplinks. The boxes are identified
via dynamic DNS entries containing the NIC's MAC address at my dyn DNS provider. A
prerequisite is to configure the if_bridge() in question to inherit the/a (persistent) MAC of
a/the first inherited NIC. In my case, this part works without flaw.
net.link.bridge.pfil_bridge
When it comes to obtain an IPv6, CURRENT, in contrast to 14-STABLE, fails to set the host part
according EUI-64. The resulting 64 host bit, which are considered to contain the 48 bit of the
MAC, do contain anything but not anything similar to ANY of the attached NIC/NICs. 

For the record, here the sysctl settings changing default settings of OIDs involving bridge
(according to some docs when jails share epair() devices on that bridge):

[...]
net.link.bridge.inherit_mac=1
net.link.bridge.pfil_local_phys=0
net.link.bridge.pfil_member=0
net.link.bridge.pfil_bridge=0
net.link.bridge.pfil_onlyip=0
[...]

I do not see the described (mutual) misbehaviour on 14-STABLE and or 14.2-RELENG.

So the negative effect of this is that the hosts in questions are not accessible/known anymore
to the net.

A bug or a "feature (due to simple dumb misconfiguration)?

Thanks in advance,
oh

-- 

A FreeBSD user