Sunday, June 21, 2009

IPv6 Introduction

IPv6 is an extension of IP with several advanced features:
  • Larger address space
  • Simpler header
  • Autoconfiguration
  • Extension headers
  • Flow labels
  • Mobility
  • “Baked in” security
Of these, many capabilities have been backported to IPv4. The primary adoption of IPv6 will be driven by the need for more addresses. Given the growth in Internet use and the emergence of large groups of Internet users in developing countries, this is a significant requirement.

IPv6 Routing Prefix

IPv4 addresses are 32 bits long, whereas IPv6 addresses are 128 bits. IPv6 addresses are composed of the following elements (see Figure 8-1):
  • The first three bits (/3) of unicast always 001.
  • The next 13 bits (/16) are Top-Level Aggregator (TLA) the upstream ISP.
  • The next 24 bits (/40) are the next-level aggregator or regional ISP.
  • Enterprises are assigned /48 and have 16 bits of subnetting.

IPv6 Interface ID


The host portion of the address is last 64 bits. It can be assigned manually, using DHCP v6, or using stateless autoconfiguration. An end-system uses stateless autoconfiguration by waiting for a router to advertise the local prefix. If the end system has a 64-bit MAC, it concatenates the prefix and its MAC to form an IPv6 address. If the end system has a 48-bit MAC, it flips the global/local bit and inserts 0xFFEE into the middle of the MAC. The resulting 64-bit number is called the EUI64. The prefix and EUI64 are concatenated to form the address. Figure 8-2 shows how a host uses its MAC address to create its IPv6 address.


Simplified Presentation of IPv6 Address
There are two ways to shorten the representation of an IPv6 address. Take the example address
4001:0000:0001:0002:0000:0000:0000:ABCD.
  • Leading zeros may be omitted. This makes the example 4001:0:1:2:0:0:0:ABCD.
  • Sequential zeros may be shown as double colons once per address. This makes the example 4001:0:1:2::ABCD.

IPv6 Header


The IPv6 header is similar to the IPv4 header. The largest changes have to do with the larger addresses, aligning fields to 64-bit boundaries and moving fragmentation to an extension header.

The fields are:
  • Version—6.
  • Priority—Similar to DSCP in version 4, this eight-bit field is used to describe relative priority.
  • Flow—20-bit flow label allows tagging in a manner similar to MPLS.
  • Length—The length of the data in the packet.
  • Next Header—Indicates how the bits after the IP header should be interpreted. Could indicate TCP or UDP, or it could show an extension header.
  • Hop Limit—Similar to TTL.
  • Source and Destination—IPv6 addresses.
Zero or more extension headers could follow, including:
  • Hop-by-hop options—Options for intermediate devices.
  • Destination options—Options for the end node.
  • Source routing—Specifies “way stations” that the route must include.
  • Fragmentation—Used to divide packets.
  • Authentication—Used to attest to source. Replaces the AH header from IPSec.
  • Encryption—Replaces the IPSec ESP header.

No comments:

Post a Comment