EM(4), vlans & dhclient

Ragnar Lonn raglon at packetfront.com
Fri Jul 8 08:49:50 GMT 2005

Lee S Clark wrote:

>- dhclient's interactions with either em(4) or some part of vlan(4) is flakey at best.  occasionally all 3 vlan interfaces will obtain an IP, in other instances there is no traffic placed on the wire at all.  typically one vlan int will get an IP the other two will not.  i suppose this has something to do with em not liking promisc.

Yeah, I've had some problems with multiple vlan interfaces too. I had 
problems using multiple unique
MAC addresses for the different vlan interfaces on 5.x. The kernel would 
drop packets destined for
e.g. vlan interface A that had MAC address X when the underlying 
physical network interface had
another MAC address. It seemed easy to patch but we ended up using 4.x 
instead anyhow and
there it works fine.

>- the vlan interfaces _must_ have the same MAC as the parent (em0) otherwise the parent must be in promisc in order for the vlan int to recieve frames destined for it if a unique lladdr is applied.  this may seem obvious, but is there a way to alter this behaviour to allow "unicast" MAC forwarding up from the parent to the vlan interfaces without enabling promisc (this might be another request for Linux veth on FreeBSD ;)?  our ISP requires MAC registration in order to allocate IPs, one MAC = one IP, period.

When we tested on 5.x, I'm fairly sure it didn't work *even if* the 
physical interface was in promiscuous
mode. Maybe the behaviour isn't the same for all 5.x versions either. Or 
maybe I'm just confused.

Anyway, if you want to use several MAC addresses on a single physical 
interface you have to set
the physical interface to promiscuous mode, AFAIK. Why don't you want to 
enable promiscuous

You also have to turn off the autosrc flag to keep the physical if from 
overwriting the MAC
address of the vlan if on outgoing packets, but you probably knew that.

You could try installing 4.11 and see how things work there, as a last 


More information about the freebsd-net mailing list