IPv4 and IPv6 addressing

In order to communicate on a TCP/IP network, a node must have an IP address. TCP/IP currently supports two methods of addressing: IPv4 and IPv6. IPv5 was strictly an experimental addressing standard and was never formally adopted. As mentioned in the previous chapter, IPv4 was the first publicly used version of the Internet Protocol, and it called for addressing using four octets of 8 bits each, for a total of 32 bits. This allows for about 4.3 billion addresses. While this addressing scheme was adequate for its time, by the early 1990s it became clear that as more nodes connected to the internet, IPv4 address exhaustion was inevitable, even after classless addressing and private addresses were introduced to conserve IPv4 address space.

As a result, the IPv6 project began in the 1990s. IPv6 addressing uses 128 bits, and the standard size of an IPv6 subnet is 64 bits—the square of the size of the entire IPv4 address space. It can thus handle the growth of public networks, and the larger addresses make route aggregation easier, as well as enable special features.

An IPv6 address is divided into eight 16-bit sections, each separated by a colon. Each section is represented by a hexadecimal number. As a result, IPv6 addresses are said to be in colon-hexadecimal format (as opposed to the dotted-decimal format of IPv4 addresses). An IPv6 address can be further simplified by removing the leading zeroes within each 16-bit block. Furthermore, a contiguous set of 16-bit blocks that are all zeroes can be abbreviated as ::, known as the double colon. Putting these two rules to use, the address 2001:0db8:0a0b:12f0:0000:0000:0000:0001 can be simplified as 2001:db8:a0b:12f0::1. It should be noted that you can only use the double colon once within an IPv6 address. Using the double colon twice would make it impossible to know how many zeroes are in an address.

IPv6 supports a number of different address types, as follows:

  • Unicast: As you might have guessed, unicast addresses specify a single interface. Therefore, a uni-cast address represents a single line of communication with a host. Uni-cast addresses can be divided into a number of different categories:
    • Global unicast: These are the equivalent of IPv4 public addresses.
    • Link-local: These are addresses allocated for use on a single network. They are the IPv6 equivalent of IPv4 169.254.0.0/16 Automatic Private IP Addressing (APIPA) addresses that are used for host-internal auto-configuration when other methods of address assignment are unavailable. IPv6 reserves fe80::/10 for link-local uni-cast addressing.
    • Site-local: These are the IPv6 equivalent of IPv4 private addresses. Site-local addresses do not interfere with global uni-cast addresses. As with IPv4 private addresses, routers do not forward site-local traffic to public networks. Site-local addresses are not automatically configured, and must be assigned via a stateless or stateful address configuration process (stateless configuration is a process by which hosts configure themselves, whereas stateful configuration involves the host getting configuration data from a server). The prefix for IPv6 site-local addresses is fec0::/10.
  • Multicast: As with IPv4, multicast addressing, or multi-casting, involves sending and receiving data between groups of nodes. This is a middle ground between uni-casting (sending to a single node) and broadcasting (sending to every node on the network).
  • Anycast: This method of addressing involves sending and receiving data to a single node in a multicast group.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.22.51.241