Subject: Re: host address zero - useable?
To: Erik E. Fair <fair@clock.org>
From: Thor Lancelot Simon <tls@rek.tjls.com>
List: tech-net
Date: 03/01/1999 20:28:10
On Mon, Mar 01, 1999 at 11:56:01AM -0800, Erik E. Fair wrote:
> Once upon a time, there was confusion about broadcast addresses for LANs
> and IP. Long since settled, we all use the all-ones host address for
> attached network broadcast (e.g. 192.1.1.255). However, during that time of
> confusion, some systems (notably Sun) used the all-zero host address for
> broadcast (e.g. 192.1.1.0). When you had two different systems with two
> different ideas about what the broadcast address was, Evil Broadcast Storms
> resulted (though these unhappy events did have the salutory effect of
> convincing the LAN/WAN designers of the time that large bridged
> ("switched") networks were a Really Bad Idea and that Routers were The Way,
> The Truth, and The Light. Some of them had to learn this the hard way, of
> course).
> 
> Now we live in the time of limited IP address space allocations, where
> every address counts, and we have to use our address space efficiently. It
> seems a waste to reserve both host address 0 and host address max for any
> given network number. Since no one is supposed to be using host address
> zero for broadcast any more, the question comes - can it now be used for an
> actual host without nasty repercussions, provided one is reasonably certain
> that one is running relatively modern software on relatively modern hosts
> on one's network?
> 
> As an extreme example, can three hosts live on network with a two-bit host
> mask (e.g. 255.255.255.252)?

Perhaps.  But the guy with the .0 IP address won't be happy if he tries to use
certain other parts of the Internet.

Until yesterday, one of my machines had an IP address inside a supernetted
block of Class C networks which happened to end in .255.  It was completely
unable to speak to various popular web sites (like www.ebay.com and
www.nytoday.com) either because they were behind routers which incorrectly
filtered all addresses classfully ending in a "broadcast address" (one such
also filtered *all* ICMP, widely agreed to be a true bonehead move) or
because they were behind "transparent" web proxies of some type -- idiot
NAT boxes, basically -- which similarly tried not to handle "directed
broadcasts", even though in a CIDR environment they didn't have enough
information to know that the "to" address o the response packets they
were handling was a "broadcast" address, or not one.

Host or Router requirements should explicitly forbid this kind of idiocy --
a router, I would think, MUST NOT refuse to handle packets based on a
refusal to "forward directed broadcasts" unless it *knows* the netmask
for the ultimate destination network, but I'm not sure they do, and I'm
not sure the manufacturers or installers of such idiotic machinery would
know or care, were they changed to.

Anyway, such routers also seem to cause the same trouble for people whose
addresses end in .0.

-- 
Thor Lancelot Simon	                                      tls@rek.tjls.com
	"And where do all these highways go, now that we are free?"