Handling flags on vlan(4)
Gleb Smirnoff
glebius at FreeBSD.org
Mon Jan 30 13:19:34 PST 2006
On Mon, Jan 30, 2006 at 10:39:38PM +0300, Yar Tikhiy wrote:
Y> Presently our vlan(4) driver sets interface's flags to 0 initially
Y> and copies a subset of them from the parent interface when the vlan
Y> interface is attached to its parent. In particular, copied are flags
Y> IFF_BROADCAST and IFF_MULTICAST. This approach has an unpleasant
Y> consequence: if you assign IP to vlan before attaching the latter to
Y> its parent, IP won't be properly set up on vlanX because the IP code
Y> does some special things for IFF_BROADCAST and IFF_MULTICAST
Y> interfaces; at least it sets up a broadcast address and joins the
Y> all-hosts group.
Y>
Y> I can see two ways to deal with the problem. The ideal and hard
Y> way is to provide hooks to notify upper network stack layers of
Y> changes in interface properties. However, I doubt if such feature
Y> is called for. The easy and practical way is to set IFF_BROADCAST
Y> and IFF_MULTICAST on vlan from the beginning and prohibit vlan from
Y> attaching to a non-bcast or non-mcast parent (which wouldn't work
Y> anyway.)
For now we can use the second way. I see no problems with it.
--
Totus tuus, Glebius.
GLEBIUS-RIPN GLEB-RIPE
More information about the freebsd-net
mailing list