HP3000-L Archives

August 1998, Week 3

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Gavin Scott <[log in to unmask]>
Reply To:
Gavin Scott <[log in to unmask]>
Date:
Thu, 20 Aug 1998 11:11:01 -0700
Content-Type:
text/plain
Parts/Attachments:
text/plain (66 lines)
Mark writes:
> Actually, this needs to be qualified a bit further because of
> the possibility of subnetting. In essence, you don't want to
> use the subnet addresses with all bits off or all bits on. As
> an example:
>
> Assume your address is 192.168.001.xxx and your subnet mask
> is 255.255.255.128 (that says that you're including the high
> order bit of the rightmost octet as part of the network address
> and not as part of the host address (e.g. you have two subnets
> on 192.168.001 - subnet 0 and subnet 1).
>
> Valid addresses would be 192.168.001.001 to 192.168.001.126 and
> 192.168.001.129 to 192.168.001.254 (or in essence, addresses 1-126
> on the second sub-net).

You know, I used to think it was this simple too.  You just pick some
arbitrary point in the host part of your class-whatever IP address and
extend the subnet mask to include the bits to the left of that point
and use all the bits to the right for hosts.  I was quite shocked a
couple years ago to find that it's no where near as simple as this.

You would think that a class C address which normally has 24 bits of
"network" number and 8 bits of "host" number could have those 8 bits of
host address used anyway you want to.  So you could have one subnet (the
full class C) of 0..255, or two networks 0..127 and 128..255, or four
networks 0..63, 64..127, 127..191, 192..255, etc.

Well, no such luck.

Apparently, both the host part of the address and the *subnet* part must
reserve both all zeros and all ones as broadcast addresses.  This mans that
you *can't* split a class C address exactly in half, as you would only have
a single bit for the subnet part of the address, and both possible values
would be reserved for broadcast addresses!  So you always need at least
two bits for the subnet and for the host part, and two of the possible
values for each part (all zeros and all ones) are reserved.  This means
that while you can't (legally anyway) split a class C into two 128 address
networks, you can split it into four 64 address networks, BUT TWO OF THESE
ARE UNUSABLE because the subnet part of the address would be all zeros or
all ones.  Thus only subnets 01 and 10 are legal, and only addresses 64..127
and 127..191 can be used, thus wasting half your possible addresses!

In reality very few people know about these official restrictions, and so
there are lots of "illegal" configurations out there, but if you start
trying to interoperate with multiple vendors router equipment then you
may start having problems.

For a Class C Network, these are your options for subnetting (adapted form
the Farallon Netopia router config manual):

Number of    # of possible  #of possible      Total valid
subnet bits  subnets        hosts per subnet  host addresses
-----------  -------------  ----------------  --------------
     0            n/a            n/a               254        (no subnet)
     1             0                                          Not useable
     2             2              62               124
     3             6              30               180
     4            14              14               196
     5            30               6               180
     6            62               2               124
     7                             0                          Not useable
     8                             0                          Not useable

G.

ATOM RSS1 RSS2