Re: interface renaming of an running interface

From: Brooks Davis (brooks_at_one-eyed-alien.net)
Date: 04/07/04

  • Next message: Alexey Dokuchaev: "Re: interface renaming of an running interface"
    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
    
    



  • Next message: Alexey Dokuchaev: "Re: interface renaming of an running interface"

    Relevant Pages

    • Re: Traffic NOT moving through the correct network interface?
      ... Kernel IP routing table ... loopback interface, but that's not part of this problem. ... Everything is done by the kernel. ... Policy based routing requires you ...
      (alt.os.linux)
    • Re: Fedora as Router - cannot get past gateway
      ... >> command so much, I am suprised any routing works at all. ... Are you using dhcp or is all config manual? ... > This is your interface to ISP? ... we all have that feeling when we can't get routing set up. ...
      (comp.os.linux.networking)
    • Re: Bind Problem - with multihomed
      ... You must add an entry to the routing table. ... See this excerpt under the "Multihoming" section from "Microsoft ... Stack Components and the TDI Interface" at ... to disjoint networks (networks that are separate from and unaware of ...
      (microsoft.public.win32.programmer.networks)
    • Re: problems pinging between FastEthernet and Ethernet interfaces
      ... I'm having some problems with a link between two Cisco routers. ... Ethernet interface. ... routing protocol will not matter. ... The best thing is to post the config of the relevant interfaces. ...
      (comp.dcom.sys.cisco)
    • intervlan routing and policy routing C3750 or C 4948
      ... routing) and for some vlans i need different gateways. ... interface Vlan10 ... route-map, 2) routing table. ... the packet will be routed according to the routing table (standard IOS ...
      (comp.dcom.sys.cisco)