On Mon, Jan 26, 2004 at 08:40:18AM -0800, Mike wrote:
> QUESTION: Why do I use a different netmask ( for a IP 
> alias on FreeBSD?  Why isn't used?

It's all about routing of outgoing packets.  Unlike linux, you can't
use the route(8) command to set up a route to a directly attached
network.  All of the local routing is controlled through ifconfig(8)
-- when you run:

    # ifconfig fxp0 inet netmask 0xffffff00 broadcast up

amongst other things, that establishes that interface as the route to
the network.  It also says that the source address on
packets sent out of that interface will be

Now suppose you add an alias address on the same subnet:

    # ifconfig fxp0 add netmask 0xffffffff broadcast

Since the netmask is a /32 it says this interface is the route to the
specific single address.  It also means that the address
is only used on outgoing packets from connections directly to the
alias address.  That's a bit of a simplification, as one of the
principle uses for alias addresses is to support jail(8)ed processes,
but it holds in general.

Could FreeBSD use exactly the same semantics as Linux or Solaris --
yes, sure.  But the FreeBSD way gives you a tad more control, and to
be honest, it's the way it is mostly because the people who wrote the
code thought that was the way it should be.  



Dr Matthew J Seaman MA, D.Phil.                       26 The Paddocks
                                                      Savill Way
PGP: http://www.infracaninophile.co.uk/pgpkey         Marlow
Tel: +44 1628 476614                                  Bucks., SL7 1TH UK

Attachment: pgp00000.pgp
Description: PGP signature

Reply via email to