Route Summarization is one of the more challenging areas of networking, so I thought I would outline my calculator, in order that you can check your solutions. The key thing is to determine the bits that are common in the bit sequences (starting from the left-hand side). All the examples given here are included on this Web page.

### Example 1

For example:

**172.16.128.0-172.16.159.255**

gives:

10101100.00010000.10000000.00000000 (172.16.128.0)10101100.00010000.10000001.00000000 (172.16.129.0)10101100.00010000.10000010.00000000 (172.16.130.0) ...10101100.00010000.10011111.11111111 (172.16.159.255)

where the common part is:

10101100.00010000.100

where 10101100 is 172

where 00010000 is 16

where 100xxxxx is 128

which gives:

172.16.128.0

and since we using 19 bits (8+8+3) to give a route summarization of:

172.16.128.0/19

### Example 2

For example: 192.168.98.0 192.168.99.0 192.168.100.0 192.168.101.0 192.168.102.0 192.168.105.0 we get:

11000000.10101000.01100010.00000000 (192.168.98.0)11000000.10101000.01100011.00000000 (192.168.99.0)11000000.10101000.01100100.00000000 (192.168.100.0)11000000.10101000.01100101.00000000 (192.168.101.0)11000000.10101000.01100110.00000000 (192.168.102.0)11000000.10101000.01101001.00000000 (192.168.105.0)

We can see that the first part is common to all the bit sequences:

**11000000.10101000.0110**

where 1100 0000 is 192

where 1010 1000 is 168

where 0110 0xxx is 96

giving: 192.168.96.0

and we have 20 bits shared, thus the result is 192.168.96.0/20

### Example 3

In this example we have:

172.1.4.0 172.1.4.128 172.1.5.0 172.1.6.0 172.1.7.0

which gives:

10101100.00000001.00000100.00000000 (172.1.4.0) 10101100.00000001.00000100.10000000 (172.1.4.128) 10101100.00000001.00000101.00000000 (172.1.5.0) 10101100.00000001.00000110.00000000 (172.1.6.0) 10101100.00000001.00000111.00000000 (172.1.7.0)

which gives a common part of:

10101100.00000001.000001

where 10101100 is 174

where 00000001 is 1

where 000001xx is 4

which gives 174.1.4.0

and we have used 22 common bits to give:

172.1.4.0/22

### Example 4

For example:

100.16.0.0 100.17.0.0 100.18.0.0 100.19.0.0

which gives:

01100100.00010000.00000000.00000000 (100.16.0.0) 01100100.00010001.00000000.00000000 (100.17.0.0) 01100100.00010010.00000000.00000000 (100.18.0.0) 01100100.00010011.00000000.00000000 (100.19.0.0)

The common part is:

01100100.000100

Where 01100100 is 100

Where 000100xx is 16

to give: 100.16.0.0/14

### Other examples

There are other examples at: