San Francisco

dave spink toolset


SUBNETS

Subnetting solved the expanding Internet routing problem. It allows an internal organisation to break into logical subnets. The company have the same network prefix, hence subnets never reach the Internet routing tables. Only routers within the subnet area need to differentiate the networks. For example, a company with an Internet network address of 130.5.0.0 may create private subnets 130.5.32.0, 130.5.64.0, 130.5.96.0.

Example 1 - The network 193.1.1.0 /24 is assigned. You have been asked to build 6 subnets with 25 hosts per subnet. The minimum number of bits that can support 6 subnets is 3 as 2^3 provides 8 subnets. Similarly the host portion will be (2^5 - 2) which allows 30 hosts per subnet. Using the 5 bits required for hosts leaves the first 3 bits of last octet for subnet numbers "11000001.00000001.00000001.|000|00000". The binary value of these subnet bits used is "128 64 32" leading to the following subnet combinations "000 001 010 011 100 101 110 111". Using this information we can define subnets and determine the subnet broadcast address which is always one less than the following subnet. See the representation below:

Subnets Portion
11000001.00000001.00000001.|000|00000 or 193.1.1.0 /27
11000001.00000001.00000001.|001|00000 or 193.1.1.32 /27
11000001.00000001.00000001.|010|00000 or 193.1.1.64 /27
11000001.00000001.00000001.|011|00000 or 193.1.1.96 /27
11000001.00000001.00000001.|100|00000 or 193.1.1.128 /27
11000001.00000001.00000001.|101|00000 or 193.1.1.160 /27
11000001.00000001.00000001.|110|00000 or 193.1.1.192 /27
11000001.00000001.00000001.|111|00000 or 193.1.1.224 /27

Host Portion (from subnet 193.1.1.32)
11000001.00000001.00000001.|001|00000 subnet network 193.1.1.32 /27
11000001.00000001.00000001.|001|00001 host address 193.1.1.33
11000001.00000001.00000001.|001|00010 host address 193.1.1.34...
11000001.00000001.00000001.|001|11101 host address 193.1.1.61
11000001.00000001.00000001.|001|11110 host address 193.1.1.62
11000001.00000001.00000001.|001|11111 subnet broadcast 193.1.1.63

Example 2 - The network 10.140.128.0 /22 is assigned. You have been asked to build 4 subnets (Dev,Uat,Prod,Admin) with 254 hosts per subnet. The minimum number of bits that can support 4 subnets is 2 as 2^2 provides 4 subnets. Similarly the host portion will be (2^8 - 2) which allows 254 hosts per subnet. Using the 8 bits required for hosts leaves the last 2 bits of third octet for subnet numbers "00001010.10001100.100000|00|.00000000". The binary value of these subnet bits used is "2 1" leading to the following subnet combinations "00 01 10 11". Using this information we can define subnets and determine the subnet broadcast address which is always one less than the following subnet. See the representation below:

Subnets Portion
00001010.10001100.100000|00|.00000000 or 10.140.128.0 /22
00001010.10001100.100000|01|.00000000 or 10.140.129.0 /22
00001010.10001100.100000|10|.00000000 or 10.140.130.0 /22
00001010.10001100.100000|11|.00000000 or 10.140.131.0 /22

Host Portion (from subnet 10.140.129.0)
00001010.10001100.100000|01|.00000000 subnet network 10.140.129.0
00001010.10001100.100000|01|.00000001 host address 10.140.129.1
00001010.10001100.100000|01|.00000002 host address 10.140.129.2...
00001010.10001100.100000|01|.11111101 host address 10.140.129.253
00001010.10001100.100000|01|.11111110 host address 10.140.129.254
00001010.10001100.100000|01|.11111111 subnet broadcast 10.140.129.255

Example 3 - The network 140.25.0.0 /16 is assigned. You have been asked to build 5 subnets with 60 hosts per subnet. The minimum number of bits that can support 5 subnets is 3 as 2^3 provides 8 subnets. Similarly the host portion will be (2^7 - 2) which allows 126 hosts (allowing host growth) per subnet. Using the 7 bits required for hosts leaves the first bit of last octet and last two bits of the third octet for subnet numbers "10001100.00011001.000000|00.0 | 0000000". The binary value of these subnet bits used is "2 1 128" leading to the following subnet combinations "00.0, 00.1, 01.0, 01.1, 10.0, 10.1, 11.0, 11.1". Using this information we can define subnets and determine the subnet broadcast address which is always one less than the following subnet. See the representation below:

Subnets Portion
10001100.00011001.000000|00.0|0000000 or 140.25.0.0 /25
10001100.00011001.000000|00.1|0000000 or 140.25.0.128 /25
10001100.00011001.000000|01.0|0000000 or 140.25.1.0 /25
10001100.00011001.000000|01.1|0000000 or 140.25.1.128 /25
10001100.00011001.000000|10.0|0000000 or 140.25.2.0 /25
10001100.00011001.000000|10.1|0000000 or 140.25.2.128 /25
10001100.00011001.000000|11.0|0000000 or 140.25.3.0 /25
10001100.00011001.000000|11.1|0000000 or 140.25.3.128 /25

Host Portion (from subnet 140.25.1.128)
10001100.00011001.000000|01.1|0000000 subnet network 140.25.1.128 /25
10001100.00011001.000000|01.1|0000001 host address 140.25.1.129
10001100.00011001.000000|01.1|0000010 host address 140.25.1.130...
10001100.00011001.000000|01.1|1111101 host address 140.25.1.253
10001100.00011001.000000|01.1|1111110 host address 140.25.1.254
10001100.00011001.000000|01.1|1111111 subnet broadcast 140.25.1.255 /25