2.9 IPv6
2.9.2 IPv6 address format
As defined first by RFC 1884 and later revised by RFC 2373, IPv6 addresses are 128-bit identifiers for interfaces and sets of interfaces, not nodes. Three general types of addresses exist:
  • Unicast - An identifier for a single interface. A packet sent to a unicast address is delivered to the interface identified by that address.
  • Anycast - An identifier for a set of interfaces (typically belonging to different nodes). A packet sent to an anycast address is delivered to the "nearest," or first, interface in the anycast group.
  • Multicast - An identifier for a set of interfaces (typically belonging to different nodes). A packet sent to a multicast address is delivered to all interfaces in the multicast group.

To write 128-bit addresses so that they are readable to human eyes, IPv6's architects abandoned dotted-decimal notation in favor of a hexadecimal format. Therefore, IPv6 can be written as 32 hex digits, with colons separating the values of the eight 16-bit pieces of the address, as shown in Figure .

Under current plans, IPv6 nodes that connect to the Internet will use what is called an aggregatable global unicast address, which is the counterpart to IPv4 global addresses that you are already familiar with. Like CIDR-enhanced IPv4, aggregatable global unicast addresses rely on hierarchy to keep Internet routing tables manageable. IPv6 global unicast addresses feature three levels of hierarchy:

  • Public topology - The collection of providers that provide Internet connectivity
  • Site topology - The level local to an organization that does not provide connectivity to nodes outside itself
  • Interface identifier - The level specific to a node's individual interface

This three-level hierarchy is reflected by the structure of the aggregatable global unicast address, which includes the following fields (see Figure ):

  • FP field (3 bits) - The 3-bit Format Prefix (FP) is used to identify the type of address (unicast, multicast, and so on). The bits 001 identify aggregatable global unicasts.
  • TLA ID field (13 bits) - The Top-Level Aggregation Identifier (TLA ID) field is used to identify the authority responsible for the address at the highest level of the routing hierarchy. Internet routers will necessarily maintain routes to all TLA IDs. With 13 bits set aside, this field can represent up to 8,192 TLAs.
  • Res field (8 bits) - IPv6 architect defined the reserved (Res) field so that the TLA or NLA IDs could be expanded as future growth warrants. Currently, this field must be set to zero.
  • NLA ID field (24 bits) - The Next-Level Aggregation Identifier (NLA ID) field is used to identify ISPs. The field itself can be organized hierarchically to reflect a hierarchy, or multitiered relationship, among providers.
  • SLA ID field (16 bits) - The Site-Level Aggregation Identifier (SLA ID) is used by an individual organization to create its own local addressing hierarchy and to identify subnets.
  • Interface ID field (64 bits) - The Interface ID field is used to identify individual interfaces on a link. This field is analogous to the host portion of an IPv4 address, but it is derived using the IEEE EUI-64 format, which, on LAN interfaces, adds a 16-bit field to the interface's MAC address.

In addition to the global unicast address space, IPv6 offers internal network numbers, or "site local use" addresses, which are analogous to RFC 1918 addresses. If a node is not addressed with a global unicast address or an internal site local use address, it can be addressed using a link local use address, which is specific a network segment.