tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Specifying names for tap interfaces



Manuel Bouyer wrote:
On Thu, Jun 21, 2012 at 12:24:48AM +1000, Darren Reed wrote:
[...]
The first issue that you face that for all intents and purposes, you
cannot change "struct ifnet" because it is in too many places and
change will likely have a huge waterfall effect. So that can't be
changed.

that's not true. struct ifnet can and has been changed, the last
time was 2011/10/19.
But this will likely cause ABI issues; if this has to be pulled up to netbsd-6
and/or netbsd-5, this needs to be carefully examinated.


There has been a lot of chat here, but I think the general idea is that the FreeBSD way of changing interface names is not acceptable on NetBSD. I was halfway on doing that change to NetBSD.

So, we would like to be able to create interface alias, here is what I think should be doable (from my PoV):

Adding a field to ifnet to contain that alias, something like if_xalias, then being able to set that name with an ioctl (something like SIOCSIFALIAS) and to fetch if with an ioctl also (SIOCGIFALIAS). I think this can be done using the already present ifreq struct, and getting/setting the alias from the ifr_name field.

What I'm not sure is how to propagate that change to every tool that interacts with network interfaces, we should of course change ifconfig to be able to set/get this aliases, but then changes will also be required to brconfig, pf...?

Also, when the user specifies something like ifconfig alias:foo up, how do we know to what is alias:foo mapped to? Querying all possible network interfaces to find it's aliases? Querying all interfaces to get it's aliases it's a very big overhead.

Home | Main Index | Thread Index | Old Index