Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 18 Apr 2004 14:54:48 -0400
From:      "Adam C. Migus" <adam@migus.org>
To:        Brooks Davis <brooks@one-eyed-alien.net>
Cc:        current@freebsd.org
Subject:   Re: VLAN support in rcNG [PATCH]
Message-ID:  <1082314488.4082cef84d997@webservices.migus.org>
In-Reply-To: <20040418183445.GA24308@Odin.AC.HMC.Edu>
References:  <1082233506.408192a2c476a@webservices.migus.org> <20040417235302.GC3534@Odin.AC.HMC.Edu> <20040417201913.P34536@sasami.jurai.net> <20040418005436.GC14645@Odin.AC.HMC.Edu> <1082258483.4081f43366454@webservices.migus.org> <20040418035435.GF14645@Odin.AC.HMC.Edu> <1082264575.40820bff559cd@webservices.migus.org> <20040418183445.GA24308@Odin.AC.HMC.Edu>

next in thread | previous in thread | raw e-mail | index | archive | help
Quoting Brooks Davis <brooks@one-eyed-alien.net>:

> On Sun, Apr 18, 2004 at 01:02:55AM -0400, Adam C. Migus wrote:
> > 
> > The software that I've seen that accepts `<interface>.<tag>' but
> can't
> > deal with it internally usually uses an `_' and it's pretty
> standard
> > however that's not going to work too well here either without
> > complicating parsing inside rcNG which is one of the reasons I
> avoided
> > the whole issue by going with the `vlan<tag>' naming scheme on the
> my
> > other boxes and specifying the physical device.  Having said that
> and
> > glancing at my keyboard I'm not sure I can think of other
> delimiter
> > that's not going to offend someone, if not sh(1).
> >
> > So I guess in summary I'm suggesting if the complexity of dealing
> with:
> > 
> > ifconfig_xl0_2="DHCP" # -> ifconfig xl0.2 vlandev xl0 vlantag 2
> > 
> > in rcNG is worth it then I think that's the only way this type
> naming
> > scheme is going to work.  I'd be happy to write the parsing for it
> if
> > you like.
> 
> There is little or no complexity depending on how you solve the
> problem.
> My proposal was to let the kernel support <interface>_<tag> which
> would
> require no modifications to the rc system.  If you wanted to do it
> in
> the rc system, the equivalent of "tr . _" would have to be applied
> to
> the name before using the pseudo associative array lookup hack,
> that's
> it.  The only difficulty is that you have to do it without anything
> in
> /usr.

Doesn't sounds difficult, expr(1) is in /bin...  :-)

> 
> > But also, given there's that other defacto-standard naming scheme
> of
> > `vlan<tag>' it would be nice to support it and the only way to do
> it,
> > since specifiying the physical device explicitly is required, is
> > something like my patch, on the surface.
> > 
> > I couldn't comment much more without seeing your code which I'd
> like to
> > do if possible but all the same I'm guessing that it would be
> fairly
> > trivial to allow:
> > 
> > cloned_interfaces="vlan2" # -> ifconfig <ifn>.2 vlandev <ifn>
> vlantag 2
> > cloned_interface_vlan2_dev="xl0" # -> <ifn> required above
> > 
> > Hmmm, this thread is making me wonder if it's time to think about
> some
> > kind of more functional, general abstraction for cloned interfaces
> in
> > rcNG which allows all the fun things people would want to do with
> them,
> > like DHCP just for starters, now.  After-all whether or not you do
> want
> > to honor the `vlan<tag>' naming scheme this already looks like it
> has
> > to potential to get a little mucky too me...  :-)
> 
> Any attempt to make vlan# mean vlan<tag> by default will result in
> much
> pain and suffering.  It would be a major POLA violation and it would
> be
> making the degenerate case of a single parent interface the default
> which would break a whole lot of other valid configurations.
> 
> -- Brooks
> 
> -- 
> Any statement of the form "X is the one, true Y" is FALSE.
> PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4
> 

I agree.  My interface, vlandev xl0, vlantag 2 is named vlan0...  Hence
my comment on the muckiness.  All the same I do wish it supported the
naming scheme in some fashion as it's still defacto-standard, not going
away and easier to integrate.  If it does end up being only
`<interface>.<tag>' I'm sure I'll be able to deal with it.

-- 
Adam C. Migus -- http://people.migus.org/~adam/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1082314488.4082cef84d997>