PCBUILD Archives

Personal Computer Hardware discussion List

PCBUILD@LISTSERV.ICORS.ORG

Options: Use Forum View

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:
Reply To:
PCBUILD - Personal Computer Hardware discussion List <[log in to unmask]>
Date:
Tue, 4 Dec 2001 12:13:12 -0800
Content-Type:
text/plain
Parts/Attachments:
text/plain (71 lines)
On 4 Dec 2001, at 10:26, Tom Turak wrote:

> I'll wade in. Can't get too technical, but I assume the mask works
> by ANDing the bits, so when an ip address is checked, 255.255.255.0
> is FF.FF.FF.00 in hex or 11111111.11111111.11111111.00000000 in
> binary, which when you AND with anything, returns the original
> first 3 segments unchanged but can return a different 4th segment.

  Actually, in this case, it MUST return a ZERO fourth segment (see
below).

  Note that the transition from one to zero does not have to be on a
segement boundary.  255.255.240.0 is a perfectly legal subnet mask,
actually used on some networks.

> This has the effect that all nodes on the network must have the same
> values for the first 3 of the 4 ip address segments.  You could
> read more about tcp/ip to see why there are 4 segments and what each
> segment represents.

  In fact, "segments" are an artifact of "dotted quad" notation, a
convenience introduced for human readers.  IP addresses are 32-bit
numbers.  The split between network and host portions of the address
may occur at virtually any of those bit positions.  It's just
convenient if it falls on an octet boundary -- and the standard
masks for the most common address classes (see below) do.

> If your not familiar with binary, 255 is the
> highest value you can store in a byte.  ANDing is the logical
> operation that tests for true or false: 1 AND 1 = 1 (true) 1 AND 0
> = 0 (false) so any value ANDed to 1 will return unchanged, but a
> value ANDed to 0 may change. (0 AND 0 = 0 (false) 0 AND 1 = 0
> (false)).

  Any value ANDed with 1 is returned unchanged; any value ANDed with
0 returns ZERO.

> For instance an ip address of 192.168.1.252 is
> 11000000.10101000.00000001.11111100 which after an AND operation
> with 255.255.255.0 would be 11000000.10101000.00000001.00000000

  Right.  The mask 255.255.255.0 tells us that the network address is
192.168.1.0 and the host address on that network is 0.0.0.252.

  Mary Wolden introduced the classes A/B/C to this thread.  (There
are also classes D and E, but these are for special intra-LAN traffic
and so are never legitimately seen on the Internet...)  The class
system was an early way of deducing the "normal" submet mask from the
first few bits of the address, and network personnel still
occasionally have to deal with old hardware, software, or protocols
that rely on that system.  But as the IP address space has begun to
run out, there has been an increasing tendency to split up large
class A blocks (and even smaller class C blocks), and also to
sometimes aggregate class C blocks as well, and so the main
usefulnesses of the class system are:

1.  It's easy to remember.  It's easier for me to tell the engineer
on a partner network that we're using a class C block than to keep
track of whether 16 host addresses is a /28 or a /29 block.  (It's a
/28.)

2.  The address blocks reserved for private use are specified in
terms of the classes:  one class A block 10.x.x.x; 16 class B blocks
172.16.x.x - 172.31.x.x; and 256 class C blocks 192.168.0.x -
192.168.255.x.  (So Tom's example above uses the 192.168.1.x block
with the class C subnet mask 255.255.255.0.)

                         PCBUILD's List Owners:
                      Bob Wright<[log in to unmask]>
                       Drew Dunn<[log in to unmask]>

ATOM RSS1 RSS2