Subject: Re: BOOTP support (change request)
To: None <marc@cygnus.com>
From: None <ronald@demon.net>
List: tech-net
Date: 05/22/1997 07:51:57
> Mycroft and I discussed (months ago in person) adding support for up
> addresses which were not just addresses, but address/length tuples.
> So, you could make lo0 127/8, or if you were doing web server
> aliasing, you could make one of your interfaces 192.x.y.z/26 to give
> yourself 64 addresses without needing to specify all of them
> individually.  As a side benefit, a mask and compare is more
> efficient, uses less state, etc. than 64 compares.  A "normal" address
> would just have /32 implied.  If you implement these semantics, then
> you could make an interface's address 0/0, and get exactly the
> behavior you want.

It isn't hard to do it.  I implemented this in NetBSD 1.1 ages ago, and
I did port the changes to 1.2, I believe.  We have about several boxes
running about a thousand virtual servers each on them using this
facility (Try adding a thousand individual host aliases and see how
long it takes to ping the end one, and you'll see why I did this :-)

I actually used the netmask field for the purpose, but that wouldn't
help the current proposals :-)

I could probably dig out the patch if anyone needs it, but I'd probably
have to get it cleared before I can release it :-( The changes were in
ifa_ifwithaddr (net/if.c) icmp_reflect (netinet/ip_icmp.c) and ipintr
(netinet/ip_input.c) and basically add a network check for our local
host.
-- 
Ronald Khoo <ronald@demon.net> Voice: +44 181 371 1000 Fax: +44 181 371 1150