Re: interface renaming of an running interface
From: Brooks Davis (brooks_at_one-eyed-alien.net)
Date: 04/07/04
- Previous message: Robert Watson: "Re: interface renaming of an running interface"
- In reply to: Harti Brandt: "interface renaming of an running interface"
- Next in thread: Alexey Dokuchaev: "Re: interface renaming of an running interface"
- Reply: Alexey Dokuchaev: "Re: interface renaming of an running interface"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Wed, 7 Apr 2004 11:01:08 -0700 To: harti@freebsd.org
On Wed, Apr 07, 2004 at 11:38:45AM +0200, Harti Brandt wrote:
>
> I'm currently trying to teach bsnmp to correctly handle interface
> renaming. One problem that I encounter is that a process listening on
> the routing socket sees an interface departure and an interface arrival
> message. This cause interfaces that run stateful protocols like SNMP on
> ATM interfaces to drop all connections which isn't really all that nice.
> The SNMP daemon would also loose all interface state and would report
> the renamed interface as a new interface with a new ifindex. This directly
> violates the IF-MIB RFC, because the daemon is required to understand that
> this is the same interface (the ifindex doesn't really help here, because
> unloading/loading the driver gives the same behaviour). I would like to do
> one of the following two things:
>
> 1) disallow renaming an interface while it is up, or
> 2) instead of emiting a departure/arrival pair of routing messages,
> generate a rename message.
For the record, I wouldn't object to 1, but I prefer 2. My view is that
the name is an ephemeral property of an interface intended to the
convenience of the administrator, nothing more.
I random though just hit me as I thought about this message. For a
variety of good reasons, if_index's are densly packed so if you destroy
an interface and create a new one, you will almost certaintly get the
index of a recently used one. This leads to the problem that you can't
tell the rename and create-destory operations apart with the current set
of routing messages. One solution to this problem might be to add a
generation number to the interface either using a global counter or just
a timestamp.
> Additionally I would like to create new sysctls:
>
> net.link.generic.ifdata.<ifindex>.dname
> net.link.generic.ifdata.<ifindex>.dunit
>
> to access the driver's name of an interface.
Fine with me.
-- 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
- application/pgp-signature attachment: stored
- Previous message: Robert Watson: "Re: interface renaming of an running interface"
- In reply to: Harti Brandt: "interface renaming of an running interface"
- Next in thread: Alexey Dokuchaev: "Re: interface renaming of an running interface"
- Reply: Alexey Dokuchaev: "Re: interface renaming of an running interface"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|