Introduction
Every machine on the Internet has a unique number assigned to it, called an IP
address. Without a unique IP address on your machine, you will not be able to
communicate with other devices, users, and computers on the Internet. You can
look at your IP address as if it were a telephone number, each one being unique
and used to identify a way to reach you and only you.
IPv4 and IPv6 Addresses
There are two flavors of IP Addresses that
can be used on a network. The first, and the version that the Internet and most
routers are currently configured for, is IPv4 or Internet Protocol version 4.
This version uses 32-bit addresses, which limits the amount of addresses to
4,294,967,296 possible unique addresses. Some of these addresses, about 290
million, are also reserved for special purposes. Due to the popular growth of
the Internet there has been concern that the pool of possible addresses would
be exhausted in the near future.
With this in mind, a new version of IP
addresses was developed called IPv6, or Internet Protocol version 6, that would
change the address size from 32-bit address to 128-bit addresses. This change
would allow for generous IP address allocations to networks without any
foreseeable problem with the amount of addresses available. In order to use
IPv6 addresses, though, existing routers and hardware would need to be upgraded
or configured to use this new version of IP addresses.As IPv4 is still the most
commonly used, this tutorial will be focusing on that version of IP addresses.
The Address Itself
An IP address always consists of 4 numbers separated by periods,
with the numbers having a possible range of 0 through 255. An example of how an
IP address appears is: 192.168.1.10
This representation of an IP address is called decimal notation
and is what is generally used by humans to refer to an IP address for
readability purposes. With the ranges for each number being between 0 and 255
there are a total 4,294,967,296 possible IP addresses.
Out of these addresses there are 3 special ranged that are
reserved for special purposes. The first is the 0.0.0.0 address and refers to
the default network and the 255.255.255.255 address which is called the
broadcast address. These addresses are used for routing, which will not be
covered in this tutorial. The third address, 127.0.0.1, is the loopback
address, and refers to your machine. Whenever you see, 127.0.0.1, you are
actually referring to your own machine. That means if you clicked on this
link, http://127.0.0.1,
you are actually trying to connect to your own computer, and unless you have a
web server running, you will get a connection error.
There are some guidelines to how IP address can appear, though. The four
numbers must be between 0 and 255, and the IP address of 0.0.0.0 and
255.255.255.255 are reserved, and are not considered usable IP addresses. IP
addresses must be unique for each computer connected to a network. That means
that if you have two computers on your network, each must have a different IP
address to be able to communicate with each other. If by accident the same IP
address is assigned to two computers, then those computers would have what is called
an "IP Conflict" and not be able to communicate with each other.
IP address classes
These IP addresses can further be broken down into classes. These
classes are A, B, C, D, E and their possible ranges can be seen in Figure 2
below.
Class
|
Start address
|
Finish address
|
A
|
0.0.0.0
|
126.255.255.255
|
B
|
128.0.0.0
|
191.255.255.255
|
C
|
192.0.0.0
|
223.255.255.255
|
D
|
224.0.0.0
|
239.255.255.255
|
E
|
240.0.0.0
|
255.255.255.255
|
If you look at the table you may notice something strange. The range
of IP address from Class A to Class B skips the 127.0.0.0-127.255.255.255
range. That is because this range is reserved for the special addresses called
Loopback addresses that have already been discussed above.
The rest of classes are allocated to companies and organizations
based upon the amount of IP addresses that they may need. Listed below are
descriptions of the IP classes and the organizations that will typically
receive that type of allocation.
Default Network: The special network 0.0.0.0 is generally used for
routing.
Class A: From the table above you see that there are 126 class A
networks. These networks consist of 16,777,214 possible IP addresses that can
be assigned to devices and computers. This type of allocation is generally
given to very large networks such as multi-national companies.
Loopback: This is the special 127.0.0.0 network that is reserved
as a loopback to your own computer. These addresses are used for testing and debugging of
your programs or hardware.
Class B: This class consists of 16,384 individual networks, each
allocation consisting of 65,534 possible IP addresses. These blocks are
generally allocated to Internet Service Providers and large networks, like a
college or major hospital.
Class C: There is a total of 2,097,152 Class C networks available,
with each network consisting of 255 individual IP addresses. This type of class
is generally given to small to mid-sized companies.
Class D: The IP addresses in this class are reserved for a service
called Multicast.
Class E: The IP addresses in this class are reserved for
experimental use.
Broadcast: This is the special network of 255.255.255.255, and is
used for broadcasting messages to the entire network that your computer resides
on.
Private Addresses
There are also blocks of IP addresses that are set aside for
internal private use for computers not directly connected to the Internet.
These IP addresses are not supposed to be routed through the Internet, and most
service providers will block the attempt to do so. These IP addresses are used
for internal use by company or home networks that need to use TCP/IP but do not
want to be directly visible on the Internet. These IP ranges are:
Class
|
Private Start Address
|
Private End Address
|
A
|
10.0.0.0
|
10.255.255.255
|
B
|
172.16.0.0
|
172.31.255.255
|
C
|
192.168.0.0
|
192.168.255.255
|
If you are on a home/office private network and want to use
TCP/IP, you should assign your computers/devices IP addresses from one of these
three ranges. That way your router/firewall would be the only device with a
true IP address which makes your network more secure.
Common Problems and Resolutions
The most common problem people have is by accident assigning an IP
address to a device on your network that is already assigned to another device.
When this happens, the other computers will not know which device should get
the information, and you can experience erratic behavior. On most operating
systems and devices, if there are two devices on the local network that have
the same IP address, it will generally give you a "IP Conflict"
warning. If you see this warning, that means that the device giving the
warning, detected another device on the network using the same address.
The best solution to avoid a problem like this is to use a service
called DHCP that almost all home routers provide. DHCP, or Dynamic Host
Configuration Protocol, is a service that assigns addresses to
devices and computers. You tell the DHCP server what range of IP addresses you
would like it to assign, and then the DHCP server takes the responsibility of
assigning those IP addresses to the various devices and keeping track so those
IP addresses are assigned only once.
Conclusion
IP addresses and their function on the Internet is an important
concept to understand. Hopefully with this tutorial you will have a firmer
grasp on this concept, which should help you troubleshoot problems and bring a
better understanding of how the Internet works.