On Fri, Jan 7, 2022 at 10:31 AM Jakub Kicinski <kuba@xxxxxxxxxx> wrote: > > On Fri, 7 Jan 2022 10:01:33 +0800 Kai-Heng Feng wrote: > > > On device creation, udev can check if it now has both interfaces? If > > > the internal interface is up, it is probably in use. Otherwise, take > > > its MAC address and assign it to the dock interface, and give the > > > internal interface a random MAC address, just in case. > > > > > > You probably need to delay NetworkManager, systemd-networkkd, > > > /etc/network/interfaces etc, so that they don't do anything until > > > after udevd has settled, indicating all devices have probably been > > > found. > > > > I don't think it's a good idea. On my laptop, > > systemd-udev-settle.service can add extra 5~10 seconds boot time > > delay. > > Furthermore, the external NIC in question is in a USB/Thunderbolt > > dock, it can present pre-boot, or it can be hotplugged at any time. > > IIUC our guess is that this feature used for NAC and IEEE 802.1X. > In that case someone is already provisioning certificates to all > the machines, and must provide a config for all its interfaces. > It should be pretty simple to also put the right MAC address override > in the NetworkManager/systemd-networkd/whatever config, no? If that's really the case, why do major OEMs came up with MAC pass-through? Stupid may it be, I don't think it's a solution looking for problem. Kai-Heng