IP Address

IP Address looks like a group of 4 numbers indicating our computer address. However it has some characteristics it is useful to know. Knowing IP address rules and regulation we could get additional information, know reasons for a problem or select the right IP address for our computer.

IP addresses in Internet are assigned by an international organization called IANA but we don’t have to request it to this organization. IANA asign a range of IP addresses to each region and country. Inside each country there are local public organizations asigning IP addresses to big enterprises and network operators. Consumers and small companies receive IP addresses from the range asigned to network operator they contract.

IPv4

It is the originally designed IP address type and the usual one. Each IP address is a group of 4 numbers from 0 to 255 each one. Maximum number of different IP addresses is 256*256*256*256 = 4,294,967,296. This number is a bit lower because there are some combinations not possible. Anyway it was a huge number of IP addresses valid for the past century but not anymore. Currently it is really difficult for network operators to request more ranges. IANA assigned in 2011 the last range to Asia region and there is no more available.

IPv6

IPv6 is the new type of IP addresses though to substitute IPv4. At the beginning it was though to be compatible with IPv4 but, in 2003, a new standar was desined. IPv6 is a group of 32 hexadecimal digits grouped 4 by 4. Total number of IP addresses are 3.4x10exp38 different ones. More than enough for a long time. IPv4 and IPv6 are incompatible but one device can have one IPv4 address and another IPv6 one simultaneously. Currently all systems and devices support IPv6 format but it is a bit risky to use only IPv6 addresses. Any network element in the way not supporting IPv6 block the connection. This is the reason IPv6 introduction is going really slow. Even in this case there is a big preassure to start using IPv6 as every time are more and more devices connected to internet.

IPv6 is a set of 8 groups of 4 hexadecimal digits each one. Example of IPv6 IP address is “2001:0db8:85a3:08d3:1319:8a2e:0370:7334”. First two groups are the use for this IP address. Like  IPv4 IANA organization is in charge of assigning ranges per use and region.

¿Why from 0 to 255?

Inside our computer or device every number is stored in a byte. One byte is a group of 8 binary digits. Then the minimum number is 00000000, or 0, and the biggest number is 11111111. Using windows calculator, in scientific mode, we could convert from binary to decimal and hexadecimal. The result is 255, the maximum number stored in a byte. As every number in  an IPv4 IP address is stored in a byte this address is a group of 4 numbers from 0 and 255. It is not mandatory but 0 and 255 are not used normally.

¿Are there different types of networks or use for IP address?

Yes, depending on first number there are different types of networks or use.

Range  Type
 1.0.0.0 to 126.255.255.255  A type networks
 127.0.0.0 a 127.255.255.255  The own device
128. 0.0.0 a 191.255.255.255 B type network
192.0.0.0 a 223.255.255.255 C type networks
224.0.0.0 a 239.255.255.255 Multicast, radio or tv broadcast
240.0.0.0 a 255.255.255.255 Future use

A type networks

Assigned to big enterprises. As an example 56 is asigned to postal service in the United States. The company in charge of post service could use any address from 56.0.0.0 to 56.255.255.255 in their computers and devices. These computers and devices could be accessed directly from any place in internet. It is true they too many IP addresses for a single company but this asignment was done long time ago when there was no lack of IP addresses and mainly for United States big companies.  Number 10 is booked for private use. This means there is no A network starting with 10 and a big company can create a internal A network only for their use. As there is no 10.X.X.X network in internet there is no confusion between private and public addresses.

B type network

Every company requesting a B type network receive the first two numbers asigned. This company is free to asign the third and the forth numbers to their computers and devices. As an example, if the company receives the networks 184.56, this company can asign addresses from 184.56.0.0 to 184.56.255.255. B type networks were available during longer time but they are already fully asigned. Anyway they are mainly asigned to network operators and they can use them for their customers. 172.16.X.X to 172.31.X.X are booked for private use and they can be used for private networks.

C type network

They are the last available ones. Requesting them the company receives the first three numbers assigned and the company can assign the last number to their computers. As an example receiving the network 211.123.112. the company could asign the addresses 211.123.112.X. Only the last number allow a maximum of 256 computers, most of times not enough for big companies. In this case this company use to request several C type networks. In this range the networks 192.168.0.X to 192.168.255.X are booked for private use. 192.168.1.X is the private network most use for internal network in residential routers.

Unicast

Are the usual ones in A, B and C type networks. Any message has unique origin IP address and unique destination IP address. If the message has to be sent to two computers it is necessary to send two messages. Unicast messages are the usual ones in internet.

Broadcast

Broadcast IP addresses are used to send the same messages to a big number of computers. Every message is received by all computers at the same time. Broadcast messages are used, as an example, to know the physical address or MAC address of the computer with a specific IP address. The computer which wants to send a message send a broadcast message asking for the IP address. All computers in the network receive this message but only the one with this IP address answer with physical or MAC address. Once both computers know each other an unicast communication is started. Broadcast address is the highest in the network. As an example, in 192.168.1.X network broadcast address is 192.169.1.255. This is the reason the number 255 is not recommended to be used for IP addresses as it could confuse with broadcast address.

Multicast

Multicast addresses are used for radio and TV channels broadcast in internet. Multicast communication is only one way from server to customers. Any message with multicast address is broadcasted to the whole network. Any computer which wants to receive the broadcast activate the corresponding multicast IP address. Multicast is only used in private networks because, as any network element replicate them, it is necessary a proper management to avoid problems. Main use is TV distribution in private networks or IPTV.

Hexadecimal

Bit is the minimum amount of information but the usual unit use to be byte. Byte is 8 bits and information use to be proportional to byte. As an example, for IP addresses in IPv4 format, every number is stored in a byte and the range is 0 to 255. We can use windows calculator in scientific mode to convert from binary to decimal or decimal to binary.

Hexadecimal is a complementary numeric system used to manage binary numbers. Hexadecimal means 16 digits. From 0 to 9 normal numbers are used but 6 additional numbers are needed. Instead of inventing 6 new numbers first 6 letters are used (a, b, c, d, e, f) but it is a bit complex as we are using letters as numbers. In hexadecimal “a” is the following number to 9, and the following number is “b”. After “f” goes 10. It is difficult to use at the beginning but conversion from binary to hexadecimal is really fast and easy. For technical people it is better to use hexadecimal than binary and it is a really fast conversion:

 4 binary digits  Hexadecimal
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 a
1011 b
1100 c
1101 d
1110 e
1111 f

The content of a byte in hexadecimal have two digits. Lower value is  “00” and the highest “ff”. For technical people conversion is really fast but, why hexadecimal is used instead of binary? We use to manage few number of digits and it is impossible for us to remember binary numbers with a lot of digits. Hexadecimal is more close to decimal and, with a minimum training, it is easy to use.