Let’s take a look at the building blocks of network configuration: IP addresses.

By Charles Schluting

Networks don’t work without addresses: Whenever you are sending something, you need to specify where it should go and where it came from. To be able to troubleshoot your network, you need to understand IP addresses: you need to be able to think on your feet. If something breaks, likely as not some address assignment has been screwed up. Let’s thoroughly explore IP addresses in their primal form. This is crucial to understanding subnets.

IPv4 Addresses and 32-bit Numbers
IP addresses are just 32-bit binary numbers, but they’re important binary numbers: you need to how to work with them.

Binary is quite simple. In binary the only numbers are zeros and ones, and a 32-bit number holds 32 zeros and ones. We’re all used to base-10 numbers, where each place in a number can hold any number from 0-9. In binary each place holds either a zero or a one. Here’s the address 255.255.255.0 in binary:

11111111.11111111.11111111.00000000

For convenience, IP addresses are typically broken into four 8-bit blocks, or octets. In an 8-bit number, if all of the bits are set to 1, then the number is equal to 255. In the previous address, 11111111 represents 255 and 00000000 represents zero.

The way binary really works is based on powers of two. Each bit represents a different power-of-two. Starting at the left-hand side, the most significant bit, numbers form in the following manner:

 Power-of-two Decimal 232 … 27 26 25 24 23 22 21 20 4,294,967,296 … 128 64 32 16 8 4 2 1

The result is additive, meaning that if all bits are set, you simply add the power-of-two value up for each place. For example, if we have an 8-bit number, 11111111 , we simply add: 27 + 2 6 + 2 5 + 2 4 + 2 3 + 2 2 + 2 1 + 2 0 = 255

Try a non-trivial example now: 11110000

We can see that four bits are “set” in the above 8-bit number. Summing the power-of-two values in those places yields: 27 + 26 + 2 5 + 2 4 = 240

It is just that simple. If you can convert a binary number to decimal form, you can easily figure out subnet masks and network addresses, and we’ll show you how in the next edition of Networking 101.

Focusing on 32-bit IPv4 addresses themselves now, there are a few different types that need to be understood. All IP addresses can be in the range 0.0.0.0 to 255.255.255.255, but some have special uses.

Loopback:
Packets that will not leave the host (i.e. they will not traverse an external network interface). Example: 127.0.0.1

Unicast:
Packets that are destined for a single IP address. Example: 2.2.2.2

Multicast:
Packets that will be duplicated by the router, and eventually routed by multicast routing mechanisms. Example: 226.0.0.2