Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Jul 1996 16:45:02 -0700 (PDT)
From:      Archie Cobbs <archie@whistle.com>
To:        freebsd-hackers@freebsd.org
Subject:   interfaces, routes, etc.
Message-ID:  <199607132345.QAA00884@bubba.whistle.com>

next in thread | raw e-mail | index | archive | help

I'm finding some weird behavior in -current with regards to interface
numbering, aliases, automatically generated routes, ARP entries, etc.

One specific example...

 - When you bring an EtherNet interface up and ping some addresses
   on that network, you get automatically generated LINK layer routes
   (ie, arp entries). However, when you bring the interface down
   these routes do not automatically go away.

   [ I thought there was discussion about this before and agreement
     that "automatically generated routes should be automatically
     removed, and static routes should always be left alone." If so,
     I'd be happy to produce a patch for review. ]

One very weird but non-reproducible case involved an ethernet interface
that had been renumbered several times on the same class c network.
It got into a situation where "ifconfig" clearly showed the address
as a single number (and netstat showed sane settings as well), but
pinging *certain* addresses on the ethernet would cause transmitted
packets to have the old source ip address.

In general, old alias addresses sometimes seem to "haunt" an interface
long after they have been deleted.

Another question:

 - Exactly what is the netmask, as configured on a point-to-point
   interface, used for? If anything, which address does it apply to,
   the local or the remote one?

   In FreeBSD:

   - The local and remote addresses do not need be part of the
     same network

   - The local address can be 0.0.0.0, but not the remote address

   - It is possible to set aliases address pairs on a point-to-point
     link which share the same destination, but not the same source

   I assume this is to be as flexible as possible for people trying
   to do funny things like half routing, etc.

   However, I don't understand the third one above; you should be
   able to have address pairs with the same source and different
   destination addresses; this would apply nicely to NBMA (non-broadcast
   multiple access) networks such as frame relay.

My suggestions...

  - Automatically generated link layer routes get removed when an
    interface is brought down.

  - Allow NMBA type addressing on point-to-point links like this:

      tun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
	      inet 1.1.1.1 --> 2.2.2.2 netmask 0xff000000 
	      inet 1.1.1.1 --> 3.3.3.3 netmask 0xff000000 
	      inet 1.1.1.1 --> 4.4.4.4 netmask 0xff000000 

  - Declare that any interface which has the POINTOPOINT but not the
    BROADCAST flag set, and which allows multiple (alias) address
    pairs, is by definition a NBMA network.


-Archie

___________________________________________________________________________
Archie L. Cobbs, archie@whistle.com  *  Whistle Communications Corporation



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