Internet Protocol version 4 (IPv4) is the fourth version of the Internet Protocol (IP). It is one of the core protocols of standards-based internetworking methods in the Internet and other packet-switched networks. IPv4 was the first version deployed for production on SATNET in 1982 and on the ARPANET in January 1983. IPv4 uses a 32-bit address space which provides 4,294,967,296 unique addresses, but large blocks are reserved for special networking methods.
In the original design of IPv4, an IP address was divided into two parts: the network identifier was the most significant octet of the address, and the host identifier was the rest of the address. There is also a second number, known as the subnet mask. Subnetting is the process of designating some high-order bits from the host part as part of the network prefix and adjusting the subnet mask appropriately. This divides a network into smaller subnets. The following diagram modifies the above example by moving two bits from the host part to the network prefix to form four smaller subnets, each one quarter of the previous size. Understanding subnetting is is essential if you work in the world of networks.
A classful network is a network addressing architecture used in the Internet from 1981 until the introduction of Classless Inter-Domain Routing in 1993. The method divides the IP address space for Internet Protocol version 4 (IPv4) into five address classes based on the leading four address bits. Classes A, B, and C provide unicast addresses for networks of three different network sizes. Class D is for multicast networking and the class E address range is reserved for future or experimental purposes.
Since its discontinuation, remnants of classful network concepts have remained in practice only in limited scope in the default configuration parameters of some network software and hardware components, most notably in the default configuration of subnet masks.
Within each of the first three classes is a reserved set of IPv4 addresses. These addresses are reserved for use internally within an organization.
- Class A Reserved: 10.0.0.0–10.255.255.255
- Class B Reserved: 172.16.0.0–172.31.255.255
- Class C Reserved: 192.168.0.0 - 192.168.255.255
The class A network 127.0.0.0 is reserved for loopback. IP packets whose source addresses belong to this network should never appear outside a host. Packets received on a non-loopback interface with a loopback source or destination address must be dropped.
There is a special address block 169.254.0.0/16 for link-local addressing. These addresses are only valid on the link (such as a local network segment or point-to-point connection) directly connected to a host that uses them. These addresses are not routable. Like private addresses, these addresses cannot be the source or destination of packets traversing the internet. These addresses are primarily used for address autoconfiguration when a host cannot obtain an IP address from a DHCP server or other internal configuration methods.
IPv6 is the latest version of the Internet Protocol, which identifies nodes connected to the Internet so they can be located. Every device that is connected to the Internet is identified through a unique IP address.
The previous version, known as IPv4, uses a 32-bit addressing scheme to support 4.3 billion devices. As the Internet has grown, personal computers, smartphones and now Internet of Things devices proves that a LOT more addresses are required.
Fortunately, the Internet Engineering Task Force (IETF) had the foresight that back in 1998 to create IPv6. This new addressing scheme uses 128-bit addressing to support approximately 340 trillion trillion (or 2 to the 128th power) devices.
The main advantages of IPv6 are:
- More efficient routing - IPv6 reduces the size of routing tables and makes routing more efficient and hierarchical.
- More efficient packet processing - IPv6's simplified packet header makes packet processing more efficient.
- Directed data flows - IPv6 supports multicast rather than broadcast.
- Simplified network configuration - Address auto-configuration (address assignment) is built in to IPv6.
- Support for new services - By eliminating Network Address Translation (NAT), true end-to-end connectivity at the IP layer is restored, enabling new and valuable services.
- Security - IPSec, which provides confidentiality, authentication and data integrity, is baked into in IPv6.