TCP/IP Calculator Explanation 

Subnet Mask Calculator

This calculator will calculate what subnet mask to use to get the required number of networks or nodes.

You'll need to enter the network portion of a TCP/IP address and the required number of sub-networks or nodes. When you have entered these values, click on 'Calculate' and it will list the network class (A, B or C), the number of sub-networks, the number of nodes per sub-network and the subnet mask to use. To get a listing of all the subnets, click on 'List Networks' and a new window will open with the listing. You can then print the list by selecting 'File - Print' on your browser menu or save it by selecting 'File - Save As'. Depending on what operating sytem and browser you have, the menu commands may be slightly different. The lists will only show the first 256 and last 256 entries. If there are more than 512 subnets, the middle entries will be shown by '.. .. ..". This has been done because if there are a significant number of subnets, your computer may take from minutes to hours to display all entries.

The calculator can now also do supernetting calculations. Just select the number of nodes to be higher than the default for that Class of Address (> 16777214 for Class A, > 65534 for Class B and > 254 for Class C), click on 'Calculate' and it will show you the supernet information. If you then click on 'List Networks' it will list the supernet information. Again, you can print or save this.

There are two conditions by which the supernetting calculator will show an 'Illegal' result. This occurs when the supernet is too large and incorporates either the default route (0.0.0.0), or the broadcast address (255.255.255.255). These supernets cannot be used for obvious reasons.
Notes:

You can also force the calculator to display using a specific class. For example, if you want to subnet 10.12.0.0 with 16 subnets, select the "Class B" radio button. It will then calculate and display 16 subnets from 10.12.0.0 to 10.12.255.255 instead of showing 16 subnets from 10.0.0.0 to 10.255.255.255. However, if you choose a number of nodes that is larger than the lower class can support, the calculator will then use the normal class.

If you select a value in 'Required nodes', the calculator will use this value to calculate everything. If you wish to base the calculations on the 'Required sub-networks', select nothing in the 'Required nodes' field.

The All zeroes Subnet and The All ones Subnet

I've had quite a few e-mails telling me the calculator is wrong because it shows the all zeroes and all ones subnets as being usable. RFC 950, which first defined subnetting, prohibited the use of these two subnets to eliminate situations that could confuse a router using classful routing protocols like RIP-1. These situations would occur because a classfull routing protocol does not supply the subnet mask or prefix length with each route. The router could not tell the difference between a route to the whole network and the all zeroes subnet; nor could it tell if a broadcast would have to be sent to the entire network or just the all ones subnet.

However, with today's classless routing protocols like OSPF and BGP4 which do supply the subnet mask, a router can now distinguish the routes and broadcasts. Therefore, these subnets can now be used with caution; you have to ensure that all of the network components are classless! A lot of certification exams will assume a classfull environment so make sure you answer the questions that way. However, in my humble opinion, these exams need to be rewritten to "get with the times".


Network/Node Calculator

This calculator will calculate the network and node components of a TCP/IP address along with the broadcast address for that network. It will automatically calculate based on the information provided in the subnet calculator, or you can enter information in directly, Just enter a subnet mask and an ip address and click on 'Calculate'.

If you click on the 'Explain' button, a screen will open which shows an explanation using the values you entered. However, you must have "cookies" enabled in your browser. If not, you will see a default example.


IP Address Converter

This converter will take an IP address in either dotted decimal notation, binary, hex or as a single decimal number (see below) and convert it to the others. Just fill in one of the 4 sections, click on the corresponding "Calculate" button, and presto, the address is converted into the other 3 formats. There is limited error checking, so make sure that you enter the numbers properly.

Have you ever seen some people list their web site using a single decimal number for the ip address like 'http://178363777'? All they are doing is converting the 32 bit binary IP address to a decimal number. Remember, the dotted notation is just a representation of a 32 bit binary number.


Subnet Mask Converter

This converter will take a subnet mask in either dotted decimal notation or as the number of bits (/xx convention) and convert it to the other. Just fill in one of the sections, click on the corresponding "Calculate" button, and presto, the subnet mask is converted into the other format. NOTE: Due to the nature of the calculator, only contiguous subnet masks are supported. Therefore, if you enter a value that would create a non-contiguous subnet mask, the value is automatically rounded to the next hightest allowed value.