See this page as a slide show
CT320 IP Addresses
An IPv4 (as opposed to the newer IPv6) IP address is
a 32-bit quantity which represents a host on the internet.
It is usually represented as four numbers,
each 0–255, separated by dots. For example:
- There are 232 (~4.2 billion) IP addresses.
- This is a ridiculously large number.
- We’re running out.
- It is often useful to group IP addresses.
- For example, Hewlett-Packard owns all the 16.whatever IP addresses.
- Yeah, well, the DoD owns nearly five percent of all IP addresses!!
- What notation shall we use, other than “whatever”?
Old-Fashioned Classful Addresses
How address ranges used to be allocated
|A||0nnnnnnn hhhhhhhh hhhhhhhh hhhhhhhh||27||224 (~16 million)||0–127.whatever|
|B||10nnnnnn nnnnnnnn hhhhhhhh hhhhhhhh||214||216 (65536)||128–191.whatever|
|C||110nnnnn nnnnnnnn nnnnnnnn hhhhhhhh||221||28 (256)||192–223.whatever|
- Class A: IBM (380,000 employees in 2016)
or the U.S. Postal Service (639,789 employees in 2017)
- Class B: CSU (33,198 students in 2016)
- Class C: Jack’s house (20 hosts in 2017)
List of assigned class A networks
Classful no good
- Originally, three classes:
- Classes too rigid (C too small, B too big)
- Rather than having only three possibilities:
- 8-bit class A network
- 16-bit class B network
- 24-bit class C network
- Have a variable-sized network:
- 30 bits
- 23 bits
- you name it
- Consider a small business that has been allocated the addresses
198.51.100.0 – 198.51.100.255.
- First 24 bits are the Network ID (the neighborhood)
- Last 8 bits are Host ID (the street address)
- Netmask: FF FF FF 0016
(11111111 11111111 11111111 000000002)
- The 1 bits represent the network
- The 0 bits represent the host
- All the 1 bits in the subnet mask are on the left
- What a stupid system!
- Still used by some Linux networking commands
- Subnet masks are old-fashioned; use CIDR (Classless Inter-Domain Routing) instead.
- 198.51.100/24 (omit trailing zero bytes)
- 198.51.100.0/24 (also ok)
- 198.51.100.42/24 (don’t do this)
- Does not have to be on byte boundaries.
- 198.51.100.128/27 is acceptable.
- Represents addresses 198.51.100.128 through 198.51.100.159.
- How many hosts is that?
Consider the CS network, 129.82.44/23
- 188.8.131.52, in binary, is:
10000001 . 01010010 . 00101100 . 00000000
- Let’s make the left 23 bits, the network, red,
and the remaining bits, the host, blue.
- 10000001 . 01010010 . 00101100 . 00000000 = 184.108.40.206
- Now, change all the blue bits from 0 to 1:
- 10000001 . 01010010 . 00101101 . 11111111 = 220.127.116.11
Therefore, 129.82.44/23 is the range of addresses
18.104.22.168 … 22.214.171.124.
It contains 129.84.44.whatever and 129.84.45.whatever,
for 512 addresses total.
Special classes of addresses
$ host denver
denver.cs.colostate.edu has address 126.96.36.199
$ host tuba
tuba.cs.colostate.edu has address 10.1.44.62
There are several special categories of addresses, including:
- Reserved for documentation:
192.0.2/24, 198.51.100/24, 203.0.113/24
- Reserved for CSU: 129.82/16
- Reserved for CSU CS: 129.82.44/23
- Reserved for private use:
10/8, 172.16/12, 192.168/16
- Our CSB 315 lab uses 192.168.110/24, which is a subset of 192.168/16.
- CS Dept. printers use 10/8. Hence, only our subnet can access them!
I’m sorry that CSU addresses begin with 129, which is so similar
to the 192 that begins one form of private networks.
Stupid IP Address Tricks
These all work in my browser:
Avoid actual links, as the linkcheck program will complain.