Background Information on IP Addresses

Structure of IP Addresses

IP addresses are numbers. Currently there are two types of IP addresses in active use: IP version 4 (IPv4) and IP version 6 (IPv6). IPv4 was initially deployed on 1 January 1983 and is still the most commonly used version.

IPv4 addresses are 32-bit numbers that range from 0 to 4,294,967,295. They are almost never used or seen in that form. Instead, they are usually represented by the familiar "dotted decimal" notation, with four decimal numbers separated by periods, for example, 192.168.0.1 or 10.0.250.252. Each individual number in a dotted decimal ranges in value from 0 to 255, and thus, in dotted decimal notation, IP addresses range from 0.0.0.0 to 255.255.255.255.

Given that there are over 4 billion individual IPv4 addresses, in many circumstances it is impractical to deal with them individually, and instead one deals with ranges (or "blocks") of IPv4 addresses. For example, one may be interested in the range of 256 IPv4 addresses from 192.168.51.0 to 192.168.51.255.

Deployment of the IPv6 protocol began in 1999. IPv6 addresses are 128-bit numbers and are conventionally expressed using hexadecimal strings (for example, 1080:0:0:0:8:800:200C:417A).

  • "Private Use" IP addresses:
            10.0.0.0 - 10.255.255.255
            172.16.0.0 - 172.31.255.255
            192.168.0.0 - 192.168.255.255
    		

    The above address blocks are reserved for use on private networks, and should never appear in the public Internet. There are hundreds of thousands of such private networks (for example home firewalls sometimes make use of them). The IANA has no record of who uses these address blocks. Anyone may use these address blocks within their own network without any prior notification to IANA.

    The point of private address space is to allow many organizations in different places to use the same addresses, and as long as these disconnected or self-contained islands of IP-speaking computers (private intranets) are not connected, there is no problem. If you see an apparent attack, or spam, coming from one of these address ranges, then either it is coming from your local environment, or the address has been "spoofed".

  • "Autoconfiguration" IP Addresses:
            169.254.0.0 - 169.254.255.255
    

    Addresses in the range 169.254.0.0 to 169.254.255.255 are used automatically by some PCs and Macs when they are configured to use IP, do not have a static IP Address assigned, and are unable to obtain an IP address using DHCP.

    This traffic is intended to be confined to the local network, so the administrator of the local network should look for misconfigured hosts. Some ISPs inadvertently also permit this traffic, so you may also want to contact your ISP.

  • "Loopback" IP addresses:
            127.0.0.0 - 127.255.255.255
    

    Each computer on the Internet uses 127.0.0.0/8 to identify itself, to itself. 127.0.0.0 to 127.255.255.255 is earmarked for what is called "loopback". This construct allows a computer to establish/validate its IP stack. Most software only uses 127.0.0.1 for loopback purposes (the other addresses in this range are seldom used). All of the addresses within the loopback address are treated with the same levels of restriction in Internet routing, so it is difficult to use any other addresses within this block for anything other than node specific applications, generally bootstraping.

  • "Unallocated" IP addresses:

    The IANA IPv4 Address Registry and the IANA Whois use the word unallocated (sometimes "reserved") to mean that the addresses are reserved for future allocation. No one should be using these addresses now. These addresses will be assigned for use in the public Internet in the future. If addresses are needed for private networks then the private-use addresses mentioned above should be used.

  • Multicast IP addresses:
            224.0.0.0 - 239.255.255.255

    Addresses in the range 224.0.0.0 to 239.255.255.255 are set aside for the special purpose of providing multicast services in the Internet. (Multicast services allow a computer to send a single message to many destinations.) Various addresses in this range are used by routers and others are used by hosts that are listening to multicast sessions.

    These addresses are available for any host that wants to participate in multicast, and typically are assigned dynamically. The source address should not be multicast (without prior agreement). The destination address may be multicast.


    IP Addressing Calculator

    An IP (Internet Protocol) address uniquely identifies a node or host connection to an IP network. System administrators or network designers assign IP addresses to nodes. IP addresses are configured by software; they are not hardware specific. An IP address is a 32 bit binary number usually represented as 4 fields each representing 8 bit numbers in the range 0 to 255 (sometimes called octets) separated by decimal points.

    For example: 150.215.17.9

    It is sometimes useful to view the values in their binary form.

    150.215.17.9
    
    10010110.11010111.00010001.00001001

    An IP address consists of two parts, one identifying the network and one identifying the node. The Class of the address determines which part belongs to the network address which part belongs to the node address.

    Address classes

    There are 5 different address classes. The first byte of the first octet determines the class of the address.

    • Class A addresses start with 0.
    • Class B addresses start with 10.
    • Class C addresses start with 110.
    • Class D addresses start with 1110.
    • Class E addresses start with 1111.

    Classes can also be distinguished in decimal notation. If the first octet is between:

    • 1 and 126 it is a Class A address.
    • 128 and 191 it is a Class B address
    • 192 and 223 it is a Class C address
    • 224 and 239 it is a Class D address
    • 240 and 255 it is a Class E address.

    127 is reserved for loopback and is used for internal testing on the local machine.

    Now we can see how the class of address determines which part belongs to the network (N) and which part belongs to the node (n).

    • Class A -- NNNNNNNN.nnnnnnnn.nnnnnnn.nnnnnnn
    • Class B -- NNNNNNNN.NNNNNNNN.nnnnnnnn.nnnnnnnn
    • Class C -- NNNNNNNN.NNNNNNNN.NNNNNNNN.nnnnnnnn

    150.215.17.9 is a Class B address so its Network is defined by the first two octets and it's node is defined by the last 2 octets. Class D addresses are reserved for multicasting and Class E addresses are reserved for future use so they should not be used.

    In order to specify a network with an IP address the node section is set to all 0's for example 150.215.0.0 specifies the network for the above address. When the node section is set to all ones it specifies a broadcast that is sent to all hosts on a network. 150.215.255.255 specifies a broadcast address.

    Credits: IANA ; WRQ

    Coming up soon ...

    More info on IP numbering