Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 88

IPv6 Technology WhitePaper

Suhasini Tiwari
NPE Data
IPv6: Technology Whitepaper

IPv6 White Paper

Table of Contents
IPv6 White Paper....................................................................................................2
Table of Contents....................................................................................................2
Introduction.............................................................................................................5
1 Scope...............................................................................................................6
2 Addressing scheme.........................................................................................6
2.1 Notation for IPv6 addresses.....................................................................7
2.1.1 IPv6 Address Prefix...........................................................................8
2.2 Types of addresses..................................................................................9
2.2.1 IPv6 Unicast Address........................................................................9
2.2.2 Anycast addresses..........................................................................15
2.2.3 Multicast address............................................................................16
2.3 IPv6 Address Assignment......................................................................18
2.4 IPv6 Address Administration..................................................................20
2.4.1 Neighbor Discovery.........................................................................21
2.4.2 Router Discovery.............................................................................22
2.5 IPv6 Address allocation by APNIC.........................................................24
3 Comparing IPv6 with IPv4.............................................................................25
4 Features of IPv6............................................................................................33
4.1 Expanded address space:......................................................................34
4.1.1 Enables global peer-to-peer communication..................................34
4.1.2 Elimination of need for network address translation (NAT) and
applications layered gateway (ALG).............................................................34
a. Introduction of anycast addresses.............................................................35
b. Improved support for multicast..................................................................35
4.1.3 Multicast Scope Address.................................................................35
4.1.4 Routing............................................................................................36
4.1.5 Efficient and Hierarchical addressing and routing infrastructure....36
4.1.6 Support for widely deployed routing protocols................................38
4.1.7 New protocol for neighboring node interaction...............................39
4.2 Simplified header format........................................................................39
4.2.1 Extensibility: Support for extension headers and options...............40
4.2.2 Flow label capability........................................................................40
4.3 Stateless and Stateful address configuration.........................................41
4.3.1 Stateless autoconfiguration:............................................................41
4.3.2 Support for authentication and privacy:..........................................41
4.3.3 Two Security Options......................................................................42
a. IPv6 Authentication Header.......................................................................42
b. Encapsulating Security Header.................................................................42
4.4 Better support for QoS [Quality of service]............................................43
4.5 Embedded mobility support....................................................................43
4.6 Updated Fragmentation and Reassembly Procedures..........................44
5 Drawbacks & bottlenecks..............................................................................44
5.1 Experimental stage.................................................................................45

2
IPv6: Technology Whitepaper

5.2 Lager overheads....................................................................................45


5.3 Address administration...........................................................................45
5.4 Advantage with NAT...............................................................................45
5.5 High costs associated with administration and management................45
5.6 Transition period.....................................................................................45
6 Migration Strategies.......................................................................................46
6.1 Dual stack...............................................................................................46
6.1.1 D N S query in dual stack...............................................................48
6.2 Tunnelling...............................................................................................50
6.2.1 Tunneling Requirements.................................................................51
6.3 IPv6 Tunnel Mechanisms:......................................................................52
6.3.1 Configured tunnels:.........................................................................52
6.3.2 Automatic tunnels...........................................................................55
6.3.3 Translation.......................................................................................65
7 Appendix........................................................................................................71
A. The 6bone.....................................................................................................71
B. Use of EUI-64 Format in IPv6 Addresses.....................................................71
C. IPv6 Site-Local Unicast Address [Deprecated by IETF]..........................72
D. Required Anycast Address.......................................................................73
E. MTU size..................................................................................................73
F. Mobile IPv6................................................................................................74
G. Dynamic Host Configuration Protocol Version 6.....................................76
H. Address Formation...................................................................................77
8 GLOSSARY:..................................................................................................79
9 References:...................................................................................................85
10 Further recommended reading:.................................................................86

3
IPv6: Technology Whitepaper

Table of Figures

Figure 1: Basic Format of IPv6 Address.................................................................6


Figure 2: Initial address allocation [October 2002].................................................8
Figure 3: IPv6 Global unicast address format......................................................10
Figure 4: IPv6 Unique Local Unicast Addresses..................................................11
Figure 5: Structure of Link-Local Address............................................................12
Figure 6: Structure of IPv4-Compatible IPv6 address..........................................13
Figure 7: Structure of IPv4-Mapped Address.......................................................14
Figure 8: Structure of Anycast address................................................................15
Figure 9: Structure of Multicast address..............................................................16
Figure 10: IPv6 Solicited-Node Multicast Address Format..................................18
Figure 11: Flowchart 1..........................................................................................20
Figure 12: Using neighbour solicitation message to determine the link layer
address of a neighbour..................................................................................21
Figure 13: Router advertisement..........................................................................23
Figure 14: IPv6 Addressing Allocation Scheme...................................................25
Figure 15:Dual Stack Operation...........................................................................47
Figure 16: Dual Stack Supports Both IPv6 Compatible and Incomppatible
applications...................................................................................................48
Figure 17: DNS Query Resolution in Dual Stack.................................................49
Figure 18: Basic Tunneling Machanism...............................................................51
Figure 20: Configuration of Manually Configured Tunnel.....................................54
Figure 21: Net Structure For Automatic Tunnelling..............................................55
Figure 22: Configuration Of Automatic IPv4-compatible Tunnel..........................56
Figure 23: Configuration Of A 6to4 Tunnel Interconnecting 6to4 Domains..........57
Figure 24: Shows The Use Of A 6to4 Relay Router For Interconnecting 6to4 And
Native IPv6 Domains.....................................................................................58
Figure 25: ISATAP Tunnel Configuration..............................................................59
Figure 26: Functioning of a Tunnel Broker..........................................................60
Figure 27: Deployment Of IPv6 Using Tunnels On The CE Routers...................62
Figure 28: IPv6 Deployment Over Any Circuit Transport Over MPLS.................63
Figure 29: Configuration for IPv6 on the PE Router.............................................63
Figure 30: Teredo Network deployment...............................................................65
Figure 31: Deployment of Ipv6 using NAT-PT......................................................68
Figure 33: Formation of an EUI format Interface ID from 48 bit MAC address....72
Figure 34: Format of Site-Local Address..............................................................73
Figure 35: Structure of Subnet-Router anycast address......................................73
Figure 36: Packet Transfer Using Mobileipv6 Technology...................................75

4
IPv6: Technology Whitepaper

Introduction
The unprecedented growth of the Internet is forcing the evolution of one of its
most significant technology enablers, the TCP/IP suite. The compelling reason
behind the formation of IPv6 is lack of address space, especially in the heavily
populated countries of Asia such as India and China. The introduction of patch up
methods, to virtually increase the IPv4 address space, such as network address
translation (NAT), DHCP etc. have to a certain extent alleviated this problem.
NAT, however, makes certain peer-to-peer applications, such as VoIP and certain
multi-user games, impossible or technically difficult and there is a limit to how
long the band-aid approaches like NAT, keep TCP/IP running.

IPv4 will not be able to deliver the network technology transformation necessary
to support Internet in the coming years. The Internet is evolving rapidly towards
the use of mobile devices that must be able to communicate with other mobile
/stationary devices and applications involving entertainment media, conferencing,
home networking etc. The need for more Internet addresses for the many
devices that will be Internet enabled will, at some point in time, exceed the
capability of IPv4. Currently the big drive for IPv6 is new uses, such as mobility,
quality of service and so on. The move from IPv4 to IPv6 enables global
reachability i.e., no hidden networks and hosts, all hosts can be servers, End-
to-End security can be deployed.

IPv6: version 6 of the Internet Protocol was initially called IP Next Generation
(IPng) when it was picked as the winner in the IETF's IPng selection process.
IPv6 is intended to replace the previous standard, IPv4, which only supports up
to about 4 billion (4 109) addresses, whereas IPv6 supports up to about 3.4
1038 (340 undecillion) addresses. This is the equivalent of 4.3 1020 (430
quintillion) addresses per inch (6.7 1017 (670 quadrillion) addresses/mm) of
the Earth's surface. It is expected that IPv4 will be supported until at least 2025,
to allow time for bugs and system errors to be corrected.

IPv6 is the second version of the Internet Protocol to be formally adopted for
general use. There was also an IPv5, but it was not a successor to IPv4; rather, it

5
IPv6: Technology Whitepaper

was an experimental flow-oriented streaming protocol, intended to support voice,


video, and audio.

IPv6, standardized by IETF in 1998, is truly the protocol of the next generation.
Though of course, because there already are millions of IPv4 enabled nodes,
IPv4 and IPv6 protocols will coexist for a long time to come. The IPv6 protocol
ensures a seamless migration with provisions to upgrade hosts and router
incrementally, reducing interruption to network services.

1 Scope
This document aims at explaining the basics of IPv6, the addressing schema with
the latest updates, how different the two Internet protocols, IPv6 and IPv4 are,
how IPv6 is advantageous over IPv4, what are the migration strategies
suggested by the IETF and other implementers of IPv6.

2 Addressing scheme.
The most dramatic change from IPv4 to IPv6 is the length of network addresses.
IPv6 addresses, as defined by RFC 2373 and RFC 2374, are 128 bits long; this
corresponds to 32 hexadecimal digits, which are normally used while writing IPv6
addresses.

It is often argued that 128-bit addresses are an overkill, and that the Internet will
never need that many. It should be noted however, that the rationale for the 128-
bit address space is not only to see to it that addresses never run out, but rather
to ensure that routing can be handled smoothly by keeping the address space
unfragmented, rather than as is with IPv4, where a great number of discrete
netblocks can be, and often are, assigned to one organization.

Figure 1: Basic Format of IPv6 Address


In most situations, IPv6 addresses are composed of two logical parts: a 64-bit
network prefix, and a 64-bit host-addressing part [Figure 1], which is often
automatically generated from the interface MAC address.

6
IPv6: Technology Whitepaper

2.1 Notation for IPv6 addresses

The 128 bits long IPv6 addreses are written as 8 groups of 4 Hexadecimal
digits.

Example: 2001:0DB8:85A3:08D3:1319:8A2E:0370:7334

Subnet prefix notation: <address>/<prefix>

<address> represents the subnet prefix expressed as a full 128 bit


IPv6 address.

<prefix> represents the number of leading bits in <address> that


contains the subnet prefix

Example: 2001:0DB8:85A3:1::/64

A single contiguous group of 0s can be represented as two colons [::].

Example: 2001:0DB8:0000:0000:0000:0000:1428:57ab

May be representd as: 2001:0DB8:0:0:0:0:1428:57ab

Or 2001:0DB8:0::0:1428:57ab

Or 2001:0DB8::1428:57ab

However, two sets of contiguous zeros cannot be replaced simultaneously.

Example: 2001:0DB8:0000:0000:1428:0000:0000:57ab

Cannot be reapresented as: 2001:0DB8::1428::57ab

But can be compressed to either: 2001:0DB8::1428:0000:0000:57ab

Or : 2001:0DB8:0000:0000:1428::57ab

Representation of Mixed addess forms: X:X:X:X:X:X:D:D:D:D

Where X Is the 16 bit hexadecimal field of the IPv6 address,

And D is the 8 bit decimal field of th IPv4 address.

Example: ::FFFF:192.168.89.9 is the same as ::FFFF:C0A8:5909

The two types of mixed formats are as given below

7
IPv6: Technology Whitepaper

The IPv4-mapped format ::FFFF:1.2.3.4

IPv4-compatible format ::1.2.3.4

Note:The IPv4 compatible addresses are being deprecated, because IPv6


transition mechanisms do not use them any longer. The respective RFCs will
reflect this shortly.

IPv6 addresses are case insensitive.

2.1.1 IPv6 Address Prefix

The IPv6 prefix is the part of the address, which represents the left-most bits that
IPv6 prefix is represented using the IPv6-prefix/prefix-length format just like an
IPv4 address represented in the classless interdomain routing (CIDR) notation.
The IPv6-prefix variable must conform to RFC 2373. Figure 2 illustrates the how
the prefix indicates the address type

Figure 2: Initial address allocation [October 2002]

8
IPv6: Technology Whitepaper

The /prefix-length variable is a decimal value that indicates the number of high-
order contiguous bits of the address comprising the prefix, which is the network
portion of the address. For example, 1080:6809:8086:6502::/64 is an acceptable
IPv6 prefix. If the address ends in a double colon, the trailing double colon can
be omitted. So, the same address can be written as 1080:6809:8086:6502/64. In
either case, the prefix length is written as a decimal number 64 and represents
the left-most bits of the IPv6 address.

2.2 Types of addresses

IPv6 addresses can be broadly classified into 3 major types, based on the scope
of the source and destination address. The three types are:

UnicastAn address for a single interface. A packet that is sent to a unicast


address is delivered to the interface identified by that address.

AnycastAn address for a set of interfaces that typically belong to different


nodes. A packet sent to an anycast address is delivered to the closest interface
as defined by the routing protocols in useidentified by the anycast address.

MulticastAn address for a set of interfaces (in a given scope) that


typically belong to different nodes. A packet sent to a multicast address is
delivered to all interfaces identified by the multicast address (in a given scope).

2.2.1 IPv6 Unicast Address

A unicast address is an address for a single interface. A packet that is sent to a


unicast address is delivered to the interface identified by that address. IPv6
unicast address types:

Global unicast address

Local use IPv6 Unicast Address

1. Site-local unicast address (deprecated) [See Appendix ]

2. Unique Link-Local Address.

3. Link-local unicast address

IPv6 addresses with embedded IPv4 addresses

9
IPv6: Technology Whitepaper

1. IPv4-mapped IPv6 address

2. IPv4 compatible IPv6 address (nearly deprecated)

Special Addresses:

1. Unspecified Address

2. Loop Back Address

Global Unicast Address

The IPv6 global unicast address is the equivalent of the IPv4 global unicast
address. A global unicast address is represented by the global unicast prefix.001
The structure of global unicast addresses enables aggregation of routing prefixes
that limits the number of routing table entries in the global routing table. Global
unicast addresses used on links are aggregated upward through organizations
and eventually to the Internet service providers (ISPs).

Figure 3: IPv6 Global unicast address format


Global unicast addresses are defined by a global routing prefix, a subnet ID, and
an interface ID. Except for addresses that start with binary 000, all global unicast
addresses have a 64-bit interface ID. The current global unicast address
allocation uses the range of addresses that start with binary value 001 (2000::/3),
as shown in Figure 3. 2000::/3 is the global unicast address range and uses one-
eighth of the total IPv6 address space. It is the largest amongst the assigned
block addresses.

Local use IPv6 unicast addresses

When communication is restricted to a certain domain i.e., the bordering routers


do not forward the packet, local scoped addresses come into picture. The two
kinds of local scoped addresses are discussed below.

10
IPv6: Technology Whitepaper

a. IPV6 Unique Local Unicast Addresses


IPV6 Unique Local Unicast Address type replaces the deprecated Site- Local
Address type [IETF (RFC3879)]. The new address type has a unicast address
format that is globally unique and non-routable, external to the private network.
However, it may be routable within multiple linked private networks.

Common Characteristics with Site-Local Addresses [C].

A prefix that is globally unique

Allows private networks to interconnect without re-addressing

No address conflict outside network

Allows IPV6 applications to operate within private networks without ISP


address assignments.

Figure 4: IPv6 Unique Local Unicast Addresses


Features of IPv6 Local unicast address format

FC00::/7 identifies a Local Unicast address

Global ID 41 bit identifier insures a unique address

Subnet Prefix identifies internal subnets

Has a 64bit Interface ID

FC00::/7 Prefix Highlights:


2,199,023,255,552 /48 unique networks can be Pseudo-randomly
generated

Centrally or locally assigned. Sustainable growth for internal networks

IPv6 Local Unicast Site Maintenance

11
IPv6: Technology Whitepaper

Edge Routers should have a null route for Local IPV6 prefix FC00::/7.

Firewall should block packets with Local IPV6 source and destination
addresses outside of local network to global access.

Note: Private site to site can be configured.

Global DNS should not store AAAA records.

b. IPv6 Link-Local Unicast Address

A link-local unicast address is an IPv6 unicast address that is automatically


configured on an IPv6 node interface by using the link-local prefix FE80::/10
(1111 1110 11) and the interface ID in the EUI-64 format. Link-local addresses are
used in the neighbor discovery protocol and the stateless autoconfiguration
process discussed in Chapter 5 Link-local addresses are typically used to
connect devices on the same local link network without the need for global
addresses. Hence, link-local addresses are useful only in the context of the local
link network.

Figure 5: Structure of Link-Local Address


Nodes on a local link can use link-local addresses to communicate with each
other without the need for a router. IPv6 nodes do not need Unique loca unicast
addressl or globally unique addresses to communicate. IPv6 routers must not
forward to other links packets that have link-local source or destination
addresses. FE80::/10 is the link-local unicast address range and uses 1/1024 of
the IPv6 address space. Figure 5 shows the structure of a link-local address

12
IPv6: Technology Whitepaper

Converting local addresses to globally routable addresses is comparitively easier.


When organizations want to go global i.e., connect to the global network the
nodes only need to replace its prefix FE80 or FC00 with a global prefix.

IPv6 addresses with Embedded IPv4 addresses.

a. IPv4-Compatible IPv6 Address


The IPv4-compatible IPv6 address is used in IPv6 transition mechanisms to
tunnel IPv6 packets dynamically over IPv4 infrastructures. The IPv4-compatible
IPv6 address is a type of IPv6 unicast address that embeds an IPv4 address in
the low-order 32 bits and zeros in the high-order 96 bits of the IPv6 address.

The format of an IPv4-compatible IPv6 address is 0:0:0:0:0:0:A.B.C.D or


:A.B.C.D. The entire 128-bit IPv4-compatible IPv6 address is used as the IPv6
address of a node and the IPv4 address embedded in the low-order 32-bits is
used as the IPv4 address of the node. IPv4-compatible IPv6 addresses are
assigned to nodes that support both the IPv4 and IPv6 protocol stacks and are
used in automatic tunnels discussed in Chapter 7. Figure 6 shows the structure
of an IPv4-compatible IPv6 address and a few acceptable representations for the
address.

Figure 6: Structure of IPv4-Compatible IPv6 address


b. IPv4-Mapped IPv6 Address
The IPv4-mapped IPv6 address is another type of IPv6 unicast address that
embeds an IPv4 address in the low order 32 bits, zeros in the high-order 80 bits,
and ones in bits 81 through 96 of the IPv6 address. This address type is used to
represent the address of an IPv4 node as an IPv6 address. Figure 7 shows the

13
IPv6: Technology Whitepaper

structure of an IPv4-mapped IPv6 address. It is only seen on the wire during


some transition and translation scenarios.

Figure 7: Structure of IPv4-Mapped Address


Special Addresses

a. The Unspecified Address


The address 0:0:0:0:0:0:0:0 is called the unspecified address.

It must never be assigned to any node.

It indicates the absence of an address.

Example of usage: Source address field of any IPv6 packet sent by initializing
host before it has learnt its own address.

Points to be noted while using the Unspecified address:

The unspecified address must not be used as the destination address of


IPv6 packets or in IPv6 routing headers.

An IPv6 packet with a source address of unspecified must never be


forwarded by an IPv6 router.

b. The Loopback Address


The address 0:0:0:0:0:0:0:1 is called the Loopback address.

It must never be assigned to any physical interface.

It may be thought of as the Link-local unicast address of a virtual


interface (typically called the Loopback interface) to an imaginary
link that goes nowhere.

Example of usage: Used by a node to send an IPv6 packet to itself.

14
IPv6: Technology Whitepaper

Points to be noted while using the Loopback address:

The loopback address must not be used as the source address in IPv6
packets that are sent out of a single node.

An IPv6 packet with a destination address of loopback must never be


forwarded by an IPv6 router.

A packet received on an interface with the destination address of loopback


must be dropped.

2.2.2 Anycast addresses

The anycast address is a global unicast address that is assigned to a set of


interfaces that typically belong to different nodes. Hence an anycast address
identifies multiple interfaces. A packet sent to an anycast address is delivered to
the closest interfaceas defined by the routing protocols in useidentified by
the anycast address. Anycast addresses are syntactically indistinguishable from
global unicast addresses because anycast addresses are allocated from the
global unicast address space. Hence the nodes to which the address is assigned
must be explicitly configured to know that it is an anycast address.

For any assigned anycast address, there is a longest prefix P of that address that
identifies the topological region in which all interfaces belonging to that anycast
address reside as seen in figure 8. Within the region identified by P, the anycast
address must be maintained as a separate entry in the routing system
(commonly referred to as a "host route"); outside the region identified by P, the
anycast address may be aggregated into the routing entry for prefix P.

Figure 8: Structure of Anycast address


Note that in the worst case, the prefix P of an anycast set may be the null prefix,
i.e., the members of the set may have no topological locality. In that case, the
anycast address must be maintained as a separate routing entry throughout the
entire Internet, which presents a severe scaling limit on how many such "global"

15
IPv6: Technology Whitepaper

anycast sets may be supported. Therefore, it is expected that support for global
anycast sets may be unavailable or very restricted.

Expected use of anycast addresses:

To identify the set of routers belonging to an organization providing


Internet service. Such addresses could be used as intermediate
addresses in an IPv6 Routing header, to cause a packet to be delivered
via a particular service provider or sequence of service providers.

To identify the set of routers attached to a particular subnet, or the set of


routers providing entry into a particular routing domain.

Points to be noted while using the Anycast address

Anycast addresses must not be used as the source address of an IPv6


packet.

Anycast addresses must not be assigned to an IPv6 host, that is it may be


assigned to an IPv6 router only.

2.2.3 Multicast address

An IPv6 multicast address is an identifier for a group of interfaces (typically on


different nodes). An interface may belong to any number of multicast groups.
Multicast addresses have the following format as seen in figure 9 :

16
IPv6: Technology Whitepaper

Figure 9: Structure of Multicast address


A packet sent to a multicast address is delivered to all interfaces identified by the
multicast address. The second octet following the prefix defines the lifetime and
scope of the multicast address. A permanent multicast address has a lifetime
parameter equal to 0; a temporary multicast address has a lifetime parameter
equal to 1. A multicast address that has the scope of a an interface, link, subnet,
admin, site, organization, or a global scope has a scope parameter of 1, 2, 3, 4,
5, 8, or E, respectively. The IPv6 addressing scheme is designed to support
millions of multicast group addresses.

Within the reserved multicast address range of FF00:: to FF0F::, the following
addresses are assigned to identify specific functions:

FF01::1All Nodes within the node-local scope (that is, only for that host)

FF02::1All Nodes on the local link (link-local scope).

FF01::2All Routers within the node-local scope

FF02::2All Routers on the link-local scope

FF05::2All Routers in the site (site-local scope)

FF02::1:FFXX:XXXXSolicited-Node multicast address, where XX:XXXX


represent the last 24 bits of the IPv6 address of node.

Note that the time-to-live (TTL) field is not used in IPv6 multicast.

17
IPv6: Technology Whitepaper

Multicast Group Membership Requirement for IPv6 Nodes

IPv6 nodes, both hosts and routers, are required to join (receive packets
destined for) the following multicast groups:

1. All-nodes multicast group FF02:0:0:0:0:0:0:1 (scope is link-local)

2. Solicited-node multicast group FF02:0:0:0:0:1:FF00:0000/104 for each of


its assigned unicast and anycast addresses

Additionally, IPv6 routers must also join the all-routers multicast group
FF02:0:0:0:0:0:0:2 (scope is link-local).

IPv6 Solicited-Node Multicast Address

Solicited-node multicast addresses are used in neighbor solicitation messages to


help with neighbor discovery, which is discussed in Appendix [neighbor
discovery]. The solicited-node multicast address is a multicast group address that
corresponds to an IPv6 unicast or anycast address. An IPv6 node must join the
associated solicited-node multicast group for every unicast and anycast address
it has been assigned. The IPv6 solicited-node multicast address has the prefix
FF02:0:0:0:0:1:FF00:0000/104 concatenated with the 24 low-order bits of a
corresponding IPv6 unicast or anycast address, as shown in Figure 10

Figure 10: IPv6 Solicited-Node Multicast Address Format


For example, the solicited-node multicast address corresponding to the IPv6
address 2037::01:800:200E:8C6C is FF02::1:FF0E:8C6C.

18
IPv6: Technology Whitepaper

2.3 IPv6 Address Assignment

An IPv6 address is assigned to a single interface, not a node. But, a single


interface could be assigned multiple IPv6 addresses. Hence, it is easy to identify
a node by any of its unicast addresses.

The following are notable exceptions to these general rules:

Multiple interfaces can have a single unicast address assigned to them


when they are used for load sharing over multiple physical interfaces. The same
is true when multiple physical interfaces are treated as a single interface at the
Internet layer.

Routers using unnumbered interfaces on point-to-point links are not


assigned IPv6 addresses, because the interfaces do not function as a source or
destination for IP datagrams.

There is a major difference in the IP address requirements between an IPv4 node


and an IPv6 node. An IPv4 node typically uses one IP address; but an IPv6 node
requires more than one IP address.

A host is required to recognize the following addresses as identifying itself:

Link Local address for each interface.

Any additional unicast and anycast addresses that have been


configured for the nodes interfaces.

The Loop back address

All nodes Multicast [see appendix: Required Anycast Address[D]

Solicited-Node Multicast Address for each of its unicast and


anycast addresses

Multicast addresses of all the other groups to which the node


belongs.

A router is required to recognize all the addresses the host recognizes, plus
the following addresses as identifying itself:

19
IPv6: Technology Whitepaper

Subnet-Router Anycast address for all interfaces for which it is


configured to act as a router.

All other anycast addresses with which the router has been
configured.

The All-Routers Multicast addresses [see appendix: Required


Anycast Address]

Renumbering of IPv6 nodes is possible with the help of router advertisements.


Router advertisement messages contain both the old prefix and the new prefix. A
decrease in the lifetime value of the old prefix alerts the nodes to use the new
prefix, while still keeping their current connections intact with the old prefix.
During this period of time, nodes have two unicast addresses in use. When the
old prefix is no longer usable, the router advertisements will include only the new
prefix.

If stateless autoconfiguration is not used for renumbering, other ways of


renumbering should be used. Autoconfiguration greatly helps the renumbering
process. Renumbering requires changes to the DNS entries and the introduction
of new IPv6 DNS records. Renumbering of a whole site also requires that all the
routers be renumbered. A router renumbering protocol has been proposed at the
IETF.

2.4 IPv6 Address Administration.

IPv6 does away with manual configuration completely. Addresses configuration


can be either Stateful or stateless. Stateful addressing is realized via
DHCPv6. Whereas Stateful address configuration /Autoconfiguration is

20
IPv6: Technology Whitepaper

Prefix
advertisement

Prefix discovery

Tentative address
formation

DAD

Address resolution

Figure 11: Flowchart 1.

independent of any server.

Address Autoconfiguration is designed for hosts. It is assumed that routers are


configured by some other means, such as router renumbering. It enables the
plug-n-play capability i.e., a soon as a host plugs into the network, it is assigned
an address without the need for any manual configuration on the hosts part.

Flow charts 1 & 2 depict the steps involved in address configuration. A detailed
version of the above flow [figure 11] is given in flow chart 2. [H].

Once the host obtains an address, there are other address related operations to
be performed. Some of them are explained in the following sections.

2.4.1 Neighbor Discovery

The neighbor discovery protocol enables IPv6 nodes and routers to:

Determine the link-layer address of a neighbor on the same link.

Find neighboring routers.

21
IPv6: Technology Whitepaper

Keep track of neighbors.

The IPv6 neighbor discovery process uses IPv6 ICMP (ICMPv6) messages and
solicited-node multicast addresses to determine the link-layer address of a
neighbor on the same network (local link), verify the reachability of a neighbor,
and keep track of neighbor routers. Every IPv6 node is required to join the
multicast groups corresponding to its unicast and anycast addresses. The IPv6
neighbor discovery process uses Neighbor solicitation and Neighbor
advertisement mechanisms for its operation

a. Neighbor Solicitation: Neighbor solicitation messages are sent on the


local link when a node wants to determine the link-layer address of another node
on the same local link. This function is similar to the ARP in IPv4, but avoids
broadcasts used in IPv4 ARP messages.

Figure 12: Using neighbour solicitation message to determine the link layer address of a neighbour.
The source node takes the right-most 24 bits of the IPv6 address of the
destination node and sends a neighbor solicitation message, which has a value
of 135 in the Type field of the ICMP packet header, to the solicited-node multicast
group address on the local link. The destination node will respond with its link-
layer address. To send a neighbor solicitation message, the source node must
first identify the IPv6 unicast address of the destination node using a naming
service mechanism such as DNS.

b. Neighbor Advertisement

22
IPv6: Technology Whitepaper

The IPv6 neighbor advertisement message is a response to the IPv6 neighbor


solicitation message. After receiving the neighbor solicitation message, the
destination node replies by sending a neighbor advertisement message on the
local link with a value of 136 in the Type field of the ICMP packet header. After
receiving the neighbor advertisement, the source node and destination node can
communicate, as seen in figure 3.11 above..

Neighbor advertisement messages are also sent when there is a change in the
link-layer address of node on a local link.

2.4.2 Router Discovery

IPv6 router discovery is a process used by IPv6 nodes to discover the routers on
the local link. The IPv6 router discovery process is similar to ICMP router
discovery in IPv4, except for one major difference described later in this section.

The IPv6 router discovery process uses the following messages:

Router advertisements and Router solicitations

a. Router Advertisement

Router advertisement messages are periodically sent out on each configured


interface of an IPv6 router. Router advertisements are also sent out in response
to router solicitation messages from IPv6 nodes on the link. The router
advertisements are sent to the all-nodes link-local multicast address (FF02 ::1) or
the unicast IPv6 address of a node that sent the router solicitation messages.

Router advertisement has a value of 134 in the Type field of the ICMP packet
header and contains the following information in the message:

Whether nodes could use address autoconfiguration

Flags to indicate the type of autoconfiguration (stateless or stateful) that


can be completed

One or more on-link IPv6 prefixes that nodes on the local link could use to
automatically configure their IPv6 addresses.

Lifetime information for each prefix included in the advertisement

23
IPv6: Technology Whitepaper

Whether the router sending the advertisement should be used as a default


router and, if so, the amount of time (in seconds) the router should be
used as a default router

Additional information for hosts, such as the hop limit and maximum
transmission unit (MTU) a host should use in packets that it originates

Figure 13: Router advertisement.


The IPv6 nodes on the local link receive the router advertisement messages and
use the information to keep the information about default router and prefix lists
and other configuration parameters updated. Figure 13. shows an example of the
router advertisement.

b. Router Solicitation

When a host does not have a configured unicast address, for example at system
startup, it sends a router solicitation message. A router solicitation is helpful,
because it enables the host to autoconfigure itself quickly without having to wait
for the next scheduled router advertisement message. A router solicitation
message has a value of 133 in the Type field of the ICMP packet header. The
source address used in a router solicitation messages is usually the unspecified
IPv6 address (0:0:0:0:0:0:0:0). If the host has a configured unicast address, the
unicast address of the interface sending the router solicitation message is used
as the source address in the message. The destination address in the router
solicitation messages is the all-routers multicast address (FF02::2) with the link-
local scope. When a router advertisement is sent in response to a router
solicitation, the destination address used in the router advertisement message is
the unicast address of the source of the router solicitation message.

24
IPv6: Technology Whitepaper

Note: A router solicitation is sent at boot time and only three times afterward to
avoid flooding of router solicitation packets in the absence of a router on the
network.

c. IPv6 Redirect Message

As with IPv4, an IPv6 redirect message is sent by a router only to help with the
reroute of a packet to a better router. The node receiving the redirect message
will then readdress the packet to a better router. Routers send redirect messages
only for unicast traffic, only to the originating nodes, and to be processed by the
nodes.

2.5 IPv6 Address allocation by APNIC

The Internet Assigned Numbers Authority (IANA) allocates 2001::/16 to registries


from the full address space. From IANA, each registry gets a /23 prefix within the
2001::/16 space, as follows:

2001:0200::/23 and 2001:0C00::/23 allocated to Asia Pacific Network


Information Centre (APNIC) for use in Asia.

2001:0400::/23 allocated to American Registry for Internet Numbers (ARIN) for


use in the Americas.

2001:0600::/23 and 2001:0800::/23 allocated to Reseaux IP Europeans


Network Coordination Center (RIPE NCC) for use in Europe and the Middle East.

The registries then allocate an initial /32 prefix to the IPv6 ISPs and the ISPs
allocate a /48 prefix (out of the /32) to each customer or site. The /48 prefix of
site could be further allocated to each LAN using a /64 prefix for a maximum of
64 bits ID hosts in each LAN

25
IPv6: Technology Whitepaper

Figure 14: IPv6 Addressing Allocation Scheme


. Each site could subnet the site into a maximum of 65,535 LANs. The allocation
plan is represented diagrammatically in figure 14.

A site should make an address plan prior to beginning allocation of its /48 space.
In order to receive a /32 prefix address block from a registry, an ISP must have
an exterior routing protocol peering with at least 3 other ISPs and either have at
least 40 customers or demonstrate a clear intent to provide an IPv6 service
within 12 months.

For the latest information about allocation of IPv6 address space to the registries
by IANA, refer to the URL at http://www.iana.org/assignments/IPv6-tla-
assignments. ABCs of I Vrsion 6

3 Comparing IPv6 with IPv4.


The following table allows a quick glance at familiar attributes associated with
IPv4 and compares them to similar attributes in IPv6.

Attributes IPv4 IPv6

Source and destination Source and destination address are


Address
address are 32 bits in 128 bits in length.
length.

26
IPv6: Technology Whitepaper

Address
Address is composed Basic architecture is 64 bits for the
Structure
of a network and a host network number and 64 bits for the
portion, which depend host number. Often, the host portion
on address class. of an IPv6 address (or part of it) will
be a MAC address or other interface
identifier.
Address Class
Various address It is a classless form of addressing.
classes are defined as:
A, B, C, D, or E

Number of
The total number of The total number of IPv4 addresses
Addresses.
IPv4 addresses is 4.2 is 340 undecillion [ 340x10 31]
million.

Originally addresses Allocation is in the earliest stages.


Address
Allocation were allocated by The Internet Engineering Task Force
network class As (IETF) and Internet Architecture
address space is Board (IAB) have recommended that
depleted, smaller essentially every organization, home,
allocations using or entity be allocated a /48 subnet
Classless Inter-Domain prefix length. This would leave 16
Routing (CIDR) are bits for the organization to do
made. Allocation has subnetting. The address space is
not been balanced large enough to give every person in
among institutions and the world their own /48 subnet prefix
nations length.

Generally, not an IPv6 addresses have two lifetimes:


Address lifetime
applicable concept, preferred and valid, with the
except for addresses preferred lifetime always <= valid.
assigned using DHCP. After the preferred lifetime expires,

27
IPv6: Technology Whitepaper

the address is not to be used as a


source IP address. After the valid
lifetime expires, the address is not
used (recognized) as a valid
destination IP address for incoming
packets.

Some IPv6 addresses have, by


definition, infinite preferred and valid
lifetimes; for example link-local

Sometimes used to Used to designate the subnet prefix


Address prefix
designate network from of an address. Written as /nnn (up to
host portion. 3 decimal digits, 0 <= nnn <= 128)
Sometimes written as suffix after the print form.
/nn suffix on An example is fe80::982:2a5c/10,
presentation form of where the first 10 bits comprise the
address. subnet prefix

Address Resolution IPv6 embeds these functions within


Address
Resolution Protocol is used by IP itself as part of the algorithms for
Protocol (ARP)
IPv4 to find a physical stateless autoconfiguration and
address, such as the neighbor discovery using Internet
MAC or link address, Control Message Protocol version 6
associated with an (ICMPv6). Hence, there is no such
IPv4 address. using thing as ARP6.
broadcast ARP request
frames.
Address types
Unicast, multicast, and Unicast, multicast, and anycast
broadcast.
Private and
All IPv4 addresses are IPv6 has an analogous concept, but
Public addresses
public, except for three with important differences.
address ranges that Addresses are public or temporary,

28
IPv6: Technology Whitepaper

have been designated previously termed anonymous. See


as private by IETF RFC 3041. Unlike IPv4 private
RFC 1918: 10.*.*.* addresses, temporary addresses can
(10/8), 172.16.0.0 be globally routed. The motivation is
through also different; IPv6 temporary
172.31.255.255 addresses are meant to shield the
(172.16/12) , and identity of a client when it initiates
192.168.*.*
communication (a privacy concern).
(192.168/16). Private Temporary addresses have a limited
address domains are lifetime, and do not contain an
commonly used within interface identifier that is a link
organizations. Private (MAC) address. They are generally
addresses cannot be indistinguishable from public
routed across the addresses.
Internet.
IPv6 has the notion of limited
address scope using its architected
scope designations
Loopback
An interface with The concept is the same as in IPv4,
address
address of 127.*.*.* and the single loopback address is
(typically 127.0.0.1) that 0000:0000:0000:0000:0000:0000:0000:0001

can only be used by a or ::1 (shortened version).

node to send packets


to itself.
Unspecified
Apparently, not Defined as ::/128 (128 0 bits). It is
address
defined, as such. The used as the source IP in some
corresponding function neighbor discovery packets
is performed by
broadcast.

For unicast addresses, In IPv6, address scope is part of the


Address scope
the concept does not architecture. Unicast addresses have
apply. There are 3 defined scopes, including link-

29
IPv6: Technology Whitepaper

designated private local, site-local and global; and


address ranges and multicast addresses have 14 scopes.
loopback. Outside of Default address selection for both
that, addresses are source and destination takes scope
assumed to be global. into account.

A scope zone is an instance of a


scope in a particular network. As a
consequence, IPv6 addresses
sometimes have to be entered or
associated with a zone ID. The
syntax is %zid, where zid is a
number (usually small) or a name.
The zone ID is written after the
address and before the prefix. For
example, 2ba::1:2:14e:9a9b:c%3/48.

Configuration must be Configuration is optional, depending


Configuration
done on a newly on functions required. An appropriate
installed system before Ethernet or tunnel interface must be
it can communicate; designated as an IPv6 interface.
that is, IP addresses Once that is done, IPv6 interfaces
and routes must be are self-configuring. So, the system
assigned. will be able to communicate with
other IPv6 systems that are local and
IP addresses are
remote, depending on the type of
assigned either
network and whether an IPv6 router
manually or through
exists.
a DHCP server.
Addresses are no longer
manually assingned.
Domain Name
Applications accept Same for IPv6. Support for IPv6
System (DNS)
host names and then exists using AAAA (quad A) record
use DNS [host address type and reverse lookup (IP-to-

30
IPv6: Technology Whitepaper

resource records i.e., A name). An application may elect to


records] to get an IP accept IPv6 addresses from DNS (or
address. not) and then use IPv6 to

Applications also communicate (or not).


accept IP addresses
and then use DNS to
get host names
Dynamic Host
Used to dynamically DHCPv6
Configuration
Protocol obtain an IP address
(DHCP)
and other configuration
information.
Renumbering
Done by manual Is an important architectural element
reconfiguration, with of IPv6, and is supposed to be
the possible exception largely automatic especially within
of DHCP. Generally, for the /48 prefix.
a site or organization, a
difficult and
troublesome process to
avoid if possible.
IPSEC
Optional. Mandatory.
IP header
Variable length of 20- Fixed length of 40 bytes. There are
60 bytes, depending on no IP header options. Generally, the
IP options present. IPv6 header is simpler than the IPv4
header.
IP header
Various options that The IPv6 header has no options.
options
may accompany an IP Instead, IPv6 adds additional
header (before any (optional) extension headers. The
transport header). extension headers are AH and ESP
(unchanged from IPv4), hop-by-hop,
routing, fragment, and destination.

31
IPv6: Technology Whitepaper

Currently, IPv6 does not support any


extension headers.
IP header
The protocol code of The type of header immediately
protocol byte
the transport layer or following the IPv6 header. Uses the
packet payload; for same values as the IPv4 protocol
example, ICMP. field. But the architectural effect is to
allow a currently defined range of
next headers, and is easily
extended. The next header will be a
transport header, an extension
header, or ICMPv6.
Checksum
Header includes Header does not include checksum.
checksum. It must be it relies on other layers to find
computed at every erroneous packets.
intervening node on a
per- packet basis
IP header Type
Used by QoS and In IPv6 traffic class field ~ Diffserv
of Service (TOS)
byte differentiated services and Priority field ~ TOS field
to designate a traffic
class.
IP header Flow
Not provided in IPv4. Allows the router to identify and
control field
there is no provision for provide special handling of packets
identification of packet belonging to a flow. Generated by
flow for QoS handling the source node.
by routers.
Internet Control
ICMP is used by IPv4 Used similarly for IPv6; however,
Message
Protocol (ICMP) to communicate Internet Control Message Protocol
network information. version 6 (ICMPv6) provides some
new attributes.
Internet Group
IGMP is used by IPv4 Replaced by MLD (multicast listener
Management

32
IPv6: Technology Whitepaper

Protocol
routers to find hosts discovery) protocol for IPv6. Does
(IGMP)
that want traffic for a essentially what IGMP does for IPv4,
particular multicast but uses ICMPv6 by adding a few
group, and used by MLD-specific ICMPv6 type values.
IPv4 hosts to inform
IPv4 routers of existing
multicast group
listeners (on the host).
ICMP Router
Used to determine Function performed via Router
discovery
IPv4 address of best Solicitation & Router Advertisement.
default gateway. It is It is a requirement.
optional
Maximum
Maximum transmission IPv6 has an architected lower bound
Transmission
Unit (MTU) unit of a link is the on MTU of 1280 bytes. That is, IPv6
maximum number of will not fragment packets below this
bytes that a particular limit. To send IPv6 over a link with
link type, such as less than 1280 MTU, the link-layer
Ethernet or modem, must transparently fragment and
supports. For IPv4, 576 defragment the IPv6 packets.
is the typical minimum.
Network
Used when translating Currently, NAT does not support
Address
Translation from a private network IPv6. More generally, IPv6 does not
(NAT)
to the Internet. require NAT. The expanded address
space of IPv6 eliminates the address
shortage problem and enables
easier renumbering.
Packet
In IPv4, tunneling For IPv6, tunneling in IPv4 packets is
tunneling
occurs in VPN for expected to be a major part of its
tunnel-mode VPN evolution. Currently, at least 5
connections (IPv4 different types of 6-in-4 tunneling are
tunneled in IPv4) and defined by IETF, each with different

33
IPv6: Technology Whitepaper

in L2TP. attributes and advantages.

4 Features of IPv6.
IPv6 is so much more than IPv4 with a couple of numbers bolted on the end to
make the address space bigger. It is a ground-up re-think of what will be required
by ip in the future. IPv6 includes modifications that will be needed to cope with
the changing traffic that is already appearing on the global IP networks. The
emphasis will be more on real time traffic carrying large amounts of data,
entertainment and other services.

The features of IPv6 that accomplish the above are:

Expanded address space:

Introduction of anycast addresses.

Improved support for multicast.

Routing.

Simplified header format

Stateless and Stateful address configuration

Support for authentication and privacy:

Better support for QoS [Quality of service].

Embedded mobility support

Updated Fragmentation and Reassembly Procedures.

These features are discussed in detail in the following sections.

4.1 Expanded address space:

The most celebrated advancement from IPv4 has been the increased address
space. The address space has been increased by a factor of 4 i.e., from 32 bits
to 128 bits, providing support for a greater number of addressable nodes. The
128 bits provide approximately 3.4 undecillion addressable nodes, enough to
allocate about 1030 addresses per person on this planet. Therefore, if necessary,
every device can have its own unique ip address. With a much larger number of

34
IPv6: Technology Whitepaper

available addresses, address-conservation techniques, such as the deployment


of NATs, are no longer necessary.

4.1.1 Enables global peer-to-peer communication.

The ability to provide a unique address for each network device enables end-to-
end reachability, which is especially important for residential IP telephony.

No intermediary nodes manipulating packets en route

This allows hosts to exchange data more securely

Accommodates ability to remotely access resources from any


location/device

4.1.2 Elimination of need for network address translation (NAT) and


applications layered gateway (ALG).

NAT was introduced as a mechanism to share and reuse the same address
space among different network segments. While it has temporarily eased the
problem of IPv4 address shortage, it has also placed a burden on network
devices and applications to deal with address translation. IPv6s increased
address space eliminates the need for address translation, and with it, the
problems and costs associated with NAT deployment.

a. Introduction of anycast addresses.

A new type of address, called anycast address, is defined to identify topological


regions rather than individual nodes. Anycast supports the concept of a sending
station transmitting a packet to any of a collection of machines (or interfaces).
Multiple machines configure the anycast address, and the sending stations
packet will reach the logical closest of those machines.

The use of anycast addresses allows nodes additional control over the path their
traffic takes. Thus enabling Provider selection. Wherein, special providers can be
selected for routing the packet. This is necessary for commercial usage of the
Internet, making it possible to choose only special providers i.e. trusted
providers.

35
IPv6: Technology Whitepaper

Anycast could be used in many other innovative ways such as DNS requests, to
identify the set of routers providing an entry into a particular routing domain,
identify the set of routers belonging to a service provider etc.

b. Improved support for multicast.

One of the salient features of IPv6 is that it does not use broadcasts at all. The
functions previously supported by IPv4 broadcasts such as router discovery and
router solicitation requests are handled by IPv6 multicast. Multicast allows IP
packets such as a video stream to be sent to multiple destinations at the same
time, saving network bandwidth. Multicast improves the efficiency of a network by
limiting the broadcast requests to a smaller number of only interested nodes.
IPv6 uses specific multicast group addresses for its various functions. Thus, IPv6
multicast prevents the problems caused by broadcast storms in IPv4 networks.

4.1.3 Multicast Scope Address

Multicast in IP is only possible in subnets. For Multimedia-applications it should


be possible to address different hosts in different subnets. This is made possible
with scoped multicast addressing. By specifying a multicast scope, the packets
are prevented from crossing the configured administrative boundaries. IPv4 uses
one broadcast address for a particular scoped zone or IP multicast boundary, and
the broadcasts are received by all hosts in this scoped zone.

IPv6 uses a 4-bit Scope ID to specify address ranges reserved for multicast
addresses for each scope. Thus, only those hosts in a specified scope address
range configured to listen to a specific multicast address receive the multicast.
However, a host can be a member of several workgroups and can listen to
several multicast addresses at the same time.

IPv6 provides a larger range of multicast addresses compared to IPv4. So,


allocation of addresses for multicast groups will not be limited for the foreseeable
future.

4.1.4 Routing

36
IPv6: Technology Whitepaper

IPv6 routing is nearly identical to IPv4 routing. It uses the longest prefix match
routing like in CIDR. A simple extension to the IPv4 routing algorithms is all that is
required for them to work with IPv6. IPv6 includes simple routing extensions,
which support powerful new routing functionality. These capabilities include:

Provider Selection (based on policy, performance, cost, etc.)

Host Mobility (route to current location)

Auto-Readdressing (route to new address)

The new routing functionality is obtained by creating sequences of IPv6


addresses using the IPv6 Routing option. The routing option is used by a IPv6
source to list one or more intermediate nodes (or topological group) to be
"visited" on the way to a packet's destination. This function is very similar in
function to IPv4's Loose Source and Record Route option.

Support for source routes


IPv6 includes an extended function source routing header designed to support
the Source Demand Routing Protocol (SDRP). The purpose of SDRP is to
support source-initiated selection of routes to complement the route selection
provided by existing routing protocols for both inter-domain and intra-domain
routes. [Estrin94b from rfc 1933]

4.1.5 Efficient and Hierarchical addressing and routing infrastructure

The availability of a very large addressing space and network prefixes provides
flexible network architecture. This flexibility allows an organization to use only
one prefix for the entire network of the organization.

This is the concept of prefix routing. Every address has an associated prefix,
which is simply a mask identifier to indicate how many of the bits, starting from
the left are used for routing and how many bits are used to identify a host. The
routers will use the prefix in order to build routing tables. End stations make the
prefix similar to todays subnet mask.

A larger address space allows the allocation of large address blocks to Internet
service providers (ISP) and to other organizations. This allocation in turn, allows

37
IPv6: Technology Whitepaper

the ISP to aggregate the prefixes of all its customers into a single prefix and
announce this one prefix to the IPv6 Internet.

The larger IPv6 address space also enables the use of multiple levels of
hierarchy inside the address space. Each level helps to aggregate the traffic at
that level and enhance the allocation of addresses in a hierarchical format. The
implementation of multiple levels in the address hierarchy permits flexibility and
new functionalities, such as the scoping of addresses. The hierarchical network
architecture of IPv6 allows the ISPs to use aggregation of network prefixes to
provide efficient and scalable routing. The hierarchical addressing structure is
designed to reduce the size of Internet routing tables.

Without a good hierarchical addressing scheme, routers will have to store large
routing tables. Though classless interdomain routing (CIDR) in IPv4 solves this
problem with the use of route aggregation, it is neither scalable nor efficient.

Multihoming: Though Multihoming allows a network to be connected to two or


more ISPs and is desirable for high reliability, it is difficult to connect a network to
multiple providers in IPv4 because such connection breaks any kind of
aggregation in the global routing table. The availability of a much larger address
space in IPv6 enables the use of multiple simultaneous prefixes for a network,
without breaking the global routing table.

However, redundancy and load sharing for multihomed networks, scalability of


the global routing table, and simple and operationally manageable Multihoming
guidelines still need to be defined. IPv6 Multihoming capabilities and application
impacts are under study in the IETF Multi6 working group.

4.1.6 Support for widely deployed routing protocols.

To enable scalable routing, IPv6 supports existing Interior Gateway Protocols


(IGPs) and Exterior Gateway Protocols (EGPs). Similar to IPv4, IPv6 uses the
longest prefix match for a routing algorithm. For example, OSPFv3, IS-ISv6,
RIPng and MBGP4+ have been well defined to support IPv6.

38
IPv6: Technology Whitepaper

Routing Information Protocol


The Routing Information Protocol Next-Generation (RIPng) protocol explained in
RFC 2080, RIPng for IPv6, functions the same and offers the same benefits as
RIP-2 (RFC 1721, RIP Version 2 Protocol Analysis) in IPv4. IPv6 enhancements
to RIPng include support for IPv6 addresses and prefixes, including next hop
IPv6. RIPng uses the all-RIP routers multicast group address FF02::9 as the
destination address for RIP update messages. RIPng uses IPv6 for transport of
the protocol messages.

Open Shortest Path First Protocol Version 3

Although most of the algorithms of OSPFv2 are the same in OSPFv3, some
changes have been made in OSPFv3, particularly to handle the increased
address size in IPv6 and the fact that OSPF runs directly over IP. Because
OSPFv2 is heavily dependent on the IPv4 address for its operation, changes
were necessary in OSPFv3 protocol to support IPv6, as outlined in RFC 2740,
OSPF for IPv6. Some of the notable changes include platform independent
implementation, protocol processing per-link rather than per-node processing,
explicit support for multiple instances per link, and changes in authentication and
packet format. IPv6 OSPF is now an IETF proposed standard. Like RIPng, IPv6
OSPFv3 uses IPv6 for transport and uses link-local addresses as source
address.

IS-IS Protocol

The IS-IS routing protocol is an IGP protocol and IPv6 IS-IS is an IETF draft. New
IPv6 routing capability has been added to the existing IS-IS protocol. Internet
Draft draft-ietf-isis-IPv6-02.txt specifies a method for exchanging IPv6 routing
information using the IS-IS routing protocol utilizing the same mechanisms
described in RFC 1195, Use of OSI IS-IS for Routing in TCP/IP and Dual
Environments. This is accomplished by adding 2 new type-length-values (TLVs)
"IPv6 Reachability" (128 bits) and "IPv6 Interface Address" (128 bits)and a
new IPv6 protocol identifier.

Multiprotocol Border Gateway Protocol+

39
IPv6: Technology Whitepaper

Multiprotocol BGP in IPv6 is an EGP that functions the same and offers the same
benefits as multiprotocol BGP in IPv4. RFC 2858, Multiprotocol Extensions for
BGP-4 describes multiprotocol extensions for BGP4 defined as new attributes.
RFC 2545, Use of BGP-4 Multiprotocol Extensions for IPv6 Interdomain Routing
describes the enhancements to multiprotocol BGP that include support for an
IPv6 address family and Network Layer Reachability Information (NLRI) and next
hop (the next router in the path to the destination) attributes. These attributes use
IPv6 addresses and scoped addresses. The next hop attribute uses a global IPv6
address and potentially also a link-local address, when a peer is reachable on
the local link.

4.1.7 New protocol for neighboring node interaction

The Neighbor Discovery protocol for IPv6 is a series of Internet Control Message
Protocol for IPv6 (ICMPv6) messages that manage the interaction of neighboring
nodes (nodes on the same link). Neighbor Discovery replaces the broadcast-
based Address Resolution Protocol (ARP), ICMPv4 Router Discovery, and
ICMPv4 Redirect messages with efficient multicast and unicast Neighbor
Discovery messages.

4.2 Simplified header format

IPv6 headers are simplified and streamlined for performance as compared to


IPv4 packets. This is achieved by moving both non-essential fields and optional
fields to extension headers that are placed after the IPv6 header. The
streamlined IPv6 header is more efficiently processed at intermediate routers.

An interesting note is that although IPv6 addresses are 4 times the size of IPv4
addresses (128-bits as opposed to 32-bits), and each packet carries both source
and destination addresses, v6 headers are only twice the size of v4 headers.
IPv4 packets are variable in size the size of the headers change depending on
what the packet carries, and what special features are used.

IPv4 headers and IPv6 headers are not interoperable. IPv6 is not a superset of
functionality that is backward compatible with IPv4. A host or router must use an
implementation of both IPv4 and IPv6 in order to recognize and process both
header formats.

40
IPv6: Technology Whitepaper

All fields in the IPv6 header are 64-bit aligned, taking advantage of the current
generation of 64-bit processors.

4.2.1 Extensibility: Support for extension headers and options

IPv6 packets are a fixed-size, and use extension headers to describe special
features or packet handling. IPv6 headers are also reorganized so that
intermediate routers do not necessarily need to examine extension headers as
is the case with IPv4 headers only those extension headers that pertain to
packet transit. This simple change makes processing and forwarding of packets
through the global network more efficient. Since these efficiencies are gained at
each intermediate hop along a packets path, the benefits will be cumulative and
substantial. This provides greater flexibility for introducing new options in the
future.

4.2.2 Flow label capability

A new capability is added to enable the labeling of packets belonging to particular


traffic flows for which the sender requests special handling, such as nondefault
quality of service or real-time service.

4.3 Stateless and Stateful address configuration

To simplify host configuration, IPv6 supports both Stateful address configuration,


such as address configuration in the presence of a DHCP server, and stateless
address configuration (address configuration in the absence of a DHCP server).

4.3.1 Stateless autoconfiguration:

The need for plug-and-play autoconfiguration and address renumbering has


become increasingly important to accommodate mobile services (data and voice)
and Internet capable appliances.IPv6s built-in address autoconfiguration feature
enables a large number of IP hosts to easily discover the network and obtain
new, globally unique IPv6 addresses.

Two steps to autoconfiguration:


Obtain interface ID that is unique on link
Use Ethernet 48-bit address: 1234:A456:0124

41
IPv6: Technology Whitepaper

Obtain correct address prefix for that subnet from subnets router
47CD:1234:4422:AC02:0022:1234:A456:0124

Even in the absence of a router, hosts on the same link can automatically
configure themselves with link-local addresses and communicate without manual
configuration.

The autoconfiguration feature also makes it simpler and easier to renumber


existing network addresses without accessing all clients. This enables network
operators to manage the transition from one provider to another more easily.

4.3.2 Support for authentication and privacy:

IPv4 and IPv6 share a powerful security mechanism called IPsec. IPsec
provides strong encryption (for keeping packet content private), strong
authentication (to ensure the packet really originated at the site specified), non-
repudiation (which keeps the sender from later claiming they did not send the
packet), and message integrity (to ensure the message was not tampered with
on the way).

Optional in IPv4, IPSec is a mandatory part of the IPv6 protocol suite. IPv6
provides security extension headers, making it easier to implement encryption,
authentication, and virtual private networks (VPNs). By providing globally unique
addresses and embedded security, IPv6 can provide end-to-end security
services such as access control, confidentiality, and data integrity with less
impact on network performance.

IPv6 offers two integrated security options. These two options can be used
separately or in conjunction with each other depending on the user's needs.

4.3.3 Two Security Options

The two securoity options are as given below.

a. IPv6 Authentication Header

This option provides authentication and integrity but no confidentiality. The option
is algorithm-independent and will support various authentication techniques. The
purpose for providing all this without the confidentiality is that these mechanism

42
IPv6: Technology Whitepaper

have to be exportable by vendors in countries that restrict the export of


confidentiality algorithms, such as the United States, for example.

In order to help ensure interoperability within the Internet, the use of keyed MD5
has been proposed. This will also eliminate a number of network attacks,
(including host masquerading attacks).

This Internet layer protection will provide the upper layers with the host origin
authentication that they currently lack.

b. Encapsulating Security Header

This option provides the integrity and confidentiality missing from the IPv6
Authentication Header option. It is both flexible and algorithm-independent.

The DES algorithm has been proposed as the standard, again with the aim of
achieving interoperability within the worldwide Internet. This mechanism,
however, probably won't be as exportable as the Authentication Header, but the
use of DES as a standard should help.

4.4 Better support for QoS [Quality of service].

QoS in IPv6 is handled in the same way it is currently handled in IPv4. Support
for class of service is available through the Traffic Class field compliant with the
IETF Differentiated Services (DiffServ) model.

The priority field on the other hand, enables a source to identify the desired
delivery priority of its packets, relative to other packets from the same source.
The Priority values are divided into two ranges:

Values 0 through 7: to specify the priority of traffic for which the source is
providing congestion control, i.e., traffic that "backs off" in response to
congestion, such as TCP traffic.

Values 8 through 15: to specify the priority of traffic that does not back off
in response to congestion, e.g., "real-time" packets being sent at a
constant rate.

43
IPv6: Technology Whitepaper

However, IPv6 header has a new field named Flow label which can contain a
label identifying a specific flow, such as video stream or videoconference. The
source node generates this flow label.

Traffic identification using a Flow Label field in the IPv6 header allows routers to
identify and provide special handling for packets belonging to a flow, a series of
packets between a source and destination. Because the traffic is identified in the
IPv6 header, support for QoS can be achieved even when the packet payload is
encrypted through IPSec.

4.5 Embedded mobility support

IPv6 supports a more robust and updated version of the Mobile IP specification.
This is the capability by which machines may move about on the network
leaving their home networks and temporarily joining other networks but
operate much as before. Mobile IP is an IETF standard allowing mobile devices
to move around without breaking their existing connections.

IPv6 packets addressed to the home address of a mobile node are transparently
routed to its care-of address through the caching of the binding of its home
address with its care-of address. This binding allows any packets destined for the
mobile node to be directed to it at this care-of address. Mobile IPv6 defines four
new IPv6 destination options: binding update option, binding acknowledgement
option, binding request option, and home address option.

The routing headers in IPv6 make Mobile IPv6 much more efficient for end
devices than Mobile IPv4. The use of the routing header for Mobile IP, rather than
IP encapsulation, enables Mobile IP to avoid triangle routing, making it much
more efficient in IPv6 than in IPv4.

4.6 Updated Fragmentation and Reassembly Procedures.

Sometimes an IP packet passed to the network stack by an application is too


large for the underlying transmission medium as when an application requests
packet transit to a distant host of a 4500 byte packet over a multi-hop network
with an Ethernet (maximum packet size of 1500 byte) segment in the middle.
Using IPv4, the packet will leave the sending-host intact, but when it hits the

44
IPv6: Technology Whitepaper

router on the near side of the Ethernet link, that router will need to fragment the
packet breaking it into three 1500-byte packets. The router at the far end of the
Ethernet segment will re-assemble the packet and pass it along to the final
destination. The smallest segment through a given path in the network is called
the Path MTU (Path Maximum Transmission Unit).

Fragmentation has a negative impact on network performance both throughput


and latency suffer if packets are fragmented.

IPv6 does not allow packet fragmentation at intermediary routers. Fragmentation,


if required, is only done by the sending station. The originating host uses a
mechanism called MTU Discovery to determine the largest packet size that it
can use to reach a destination given the present packet-path.

This is a much more efficient and predictable method to handle packet transport.

5 Drawbacks & bottlenecks.


The drewbacks of the IPv6 are given as below

5.1 Experimental stage

As of now, IPv6 is still not mature enough to be deployed without any hiccups.
Hence any hesitation in deploying IPv6 on the provider or the users part is well
founded.

5.2 Lager overheads

Use of extension headers makes for larger overheads.

5.3 Address administration

So far, no tools have been developed to keep a track of which IP addresses are
associated with which subnets.

5.4 Advantage with NAT

Companies like to hide their addresses behind firewalls so they cannot be


attacked. People have learned to use Network Address Translation (NAT), where
you mask your internal IP addresses by only externally expressing the address of
the NAT router. It not only helps conserve IP addresses, but also adds security by

45
IPv6: Technology Whitepaper

hiding the IP addresses of internal devices. There are two schools of thought:
one is that traffic should travel directly from end to end, and the other is to use
NAT and wall off subnets from the public Internet. With NAT there is no need to
go to IPv6 for a long time.

5.5 High costs associated with administration and management

Over time, companies will migrate to IPv6-compatible switches, routers and


operating systems in PCs and servers. As long as a company takes its sweet
time, there may not be much of a hardware and software cost. The real cost is in
administration and management. It is a much more complex network
environment. Training is a must for Architectural & operational personnel.

5.6 Transition period

Transition to IPv6 is going to be expensive and long drawn since operating 2


simultaneous networks is costly and interoperability with IPv4 implementations
will have to be maintained for long.

6 Migration Strategies.
IPv6 provides many benefits over legacy IPv4 technology; however, because of
the sheer magnitude of the existing IPv4 infrastructure any successful strategy
for IPv6 deployment requires it to coexist with IPv4, atleast for now. Even if
private networks migrate to IPv6 completely, the Internet as a whole will continue
to function primarily on the current Internet Protocol [IPv4] for another 10-20
years.

The key transition objective is to allow IPv6 and IPv4 hosts to interoperate.

A second objective is to allow IPv6 hosts and routers to be deployed in the


Internet in a highly diffuse and incremental fashion, with few interdependencies.
The incremental upgrade features of the transition mechanisms allow the host
and router vendors to integrate IPv6 into their product lines at their own pace,
and allow the end users and network operators to deploy IPv6 on their own
schedules.

46
IPv6: Technology Whitepaper

A third objective is that the transition should be as easy as possible for end-
users, system administrators, and network operators to understand and carry
out.

IPv6 has been designed in such a way that a smooth transition from IPv4 is
possible. A number of transition tools have been developed by the IETF working
group NGTRANS [IP Next generation Transition Group] for managing this
complex and prolonged transition from IPv4 to IPv6. There are largely three
types of transition mechanisms - dual stack, translation and tunnelling. However
in practice, the distinction between the types is nominal and many tools represent
a hybrid of techniques. The three basic transition strategies are

6.1 Dual stack

Dual-Stack systems have both IPv4 and IPv6 addresses and capability. A
machine configured in this manner has complete interoperability with any IP-
based node it simply uses v4 to communicate with v4-only machines, and v6 to
communicate with v6-only nodes. Note that, since a dual-stack node still needs a
routable IPv4-address, this mechanism does nothing to allow rapid expansion of
the Internet.

Figure 15:Dual Stack Operation


IPv6 and IPv4 are two completely separate protocols. IPv6 is not backward
compatible with IPv4 and IPv4 host and router will not be able to deal with IPv6
traffic (and vice-versa).

47
IPv6: Technology Whitepaper

Dual stack tools resolve IPv6 and IPv4 incompatibility issues by combining the
two protocol stacks. Dual stack nodes have the ability to send and receive both
IPv4 and IPv6 packets. They can thus directly interoperate with IPv4-only node
and IPv6-only nodes as seen in figure 15.

While implementing dual stack functionality in the network;

The first recommended step is to deploy dual stack routers and servers
to a link on which IPv6 is to be deployed. Once deployed, the servers and
routers will learn IPv6 routes and communicate in IPv6. This must be done
in a way that does not affect IPv4 traffic that is still operating on this link,
and in particular, performance. This necessitates maintaining dual routing
tables on each router. No new hardware should be required at this stage
as most upgrades can be carried out in software.

The next step is to deploy dual stack clients on the IPv6 ready links.
For convenience, stateless auto configuration (a method by which IPv6
hosts can acquire addresses and other network information automatically)
may be used to reduce the management burden. Assigning v4 mapped
v6 addresses to the nodes makes the addressing process simpler and
more convenient. At this point the DNS can be populated with entries.
This again can also be achieved in software.

Apart from this, other network elements such as switches, bridges etc.
also need to be upgraded to deal with both the protocols.

A node that has been configured to support a dual stack system will have to
obtain both IPv4 and IPv6 configuration settings, like;

32-bits IPv4 address

128-bits IPv6 address

Link local IPv6 address

An appropriate IPv6 multicast address

Global unicast IPv6 address if required

48
IPv6: Technology Whitepaper

NTP server

DNS server

NIS server

DNS search path

An advantage of the dual stack approach is that it can support gradual migration
of applications as both IPv6 compatible and only-IPv4 compatible applications
are supported on a dual stack host as seen in the figure 16 below.

Figure 16: Dual Stack Supports Both IPv6 Compatible and Incomppatible applications.
6.1.1 D N S query in dual stack

The current 32-bit name DNS servers cannot handle 128-bit addresses used
by IPv6 devices. Dual stacking deals with most of the DNS resolution issues in
the IPv6 DNS standard (RFC 1886, DNS Extensions to Support IP Version 6).
The DNS server must provide resolver libraries capable of dealing with IPv4 A
records as well as IPv6 A6 and AAAA records. When an application request
all available addresses for the destination host name [for example www.x.y] the
default behaviour to be observed is that DNS should attempt to resolve for an
IPv6 address first and, if not available, fall back on an IPv4 address. There are
some implementations wherein dual stack node receives both IP addresses and
decides locally which one is to be used as illustrated in the figure 17.

The dual stack host requests both addresses from the DNS server.

Chooses the one address and connects to the respective node.

49
IPv6: Technology Whitepaper

Figure 17: DNS Query Resolution in Dual Stack


While the dual stack approach has many advantages as already seen, there are
a few downsides to the mechanism.

The problem with implementing a dual stack scheme is that the number of
nodes is limited to the available IPv4 addresses. Which

Network topology requires Dual routing tables

In fact all the network elements have to support both protocols

In an attempt to overcome these issues, another transition mechanism the DSTM


[Dual Stack transition Mechanism] has been proposed.

6.2 Tunnelling

A transition mechanism that allows IPv6 hosts to communicate over intertwining


IPv4 network.

Tunneling is a technique where islands of IPv6 nodes can communicate with


other islands of IPv6 nodes over an intervening IPv4 network [or vice versa]. IPv6
packets are tunneled across the IPv4 network simply by encapsulating the IPv6
packet within an IPv4 header, and identifying that this datagram is an
encapsulated IPv6 packet by giving the datagram a protocol value of 41. Thus,
the nodes have complete end-to-end v6 capability, but as the packets travel over
the predominantly IPv4 Internet (IPv6 packets encapsulated in IPv4 packets), all
of the advanced features of v6 pertaining to packet transport are not available. A
point to note here is that tunneling does not allow v6 nodes to talk to v4 nodes.

50
IPv6: Technology Whitepaper

Tunnelling allows early IPv6 implementations to take advantage of existing IPv4


infrastructure without any change to IPv4 components. While the IPv6
infrastructure is being deployed, the existing IPv4 routing infrastructure can
remain functional, and can be used to carry IPv6 traffic. Tunneling can be used
in a variety of ways:

Router-to-Router. IPv6/IPv4 routers interconnected by an IPv4


infrastructure can tunnel IPv6 packets between themselves. In this case,
the tunnel spans one segment of the end-to-end path that the IPv6 packet
takes.

Host-to-Router. IPv6/IPv4 hosts can tunnel IPv6 packets to an


intermediary IPv6/IPv4 router that is reachable via an IPv4 infrastructure.
This type of tunnel spans the first segment of the packet's end-to-end
path.

Host-to-Host. IPv6/IPv4 hosts that are interconnected by an IPv4


infrastructure can tunnel IPv6 packets between themselves. In this case,
the tunnel spans the entire end-to-end path that the packet takes.

Router-to-Host. IPv6/IPv4 routers can tunnel IPv6 packets to their final


destination IPv6/IPv4 host. This tunnel spans only the last segment of the
end-to-end path.

The underlying mechanism for tunnelling is as follows:

The entry node of the tunnel (the encapsulating node) creates an


encapsulating IPv4 header and transmits the encapsulated packet.

The exit node of the tunnel (the decapsulating node) receives the
encapsulated packet, reassembles the packet if needed, removes the
IPv4 header, updates the IPv6 header, and processes the receivedIPv6
packet.

The encapsulating node MAY need to maintain soft state information for
each tunnel recording such parameters as the MTU of the tunnel in order
to process IPv6 packets forwarded into the tunnel. Since the number of

51
IPv6: Technology Whitepaper

tunnels that any one host or router may be using may grow to be quite
large, this state information can be cached and discarded when not in use.

Figure 18 illustrates the above-explained mechanism.

Figure 18: Basic Tunneling Machanism


6.2.1 Tunneling Requirements

All tunneling mechanisms require that the endpoints of the tunnel run both
IPv4 and IPv6 protocol stacks, that is, endpoints must run in dual-stack mode.
The dual-stack routers run both IPv4 and IPv6 protocols simultaneously and
thus can interoperate directly with both IPv4 and IPv6 end systems and
routers.

For proper operation of the tunnel mechanisms, appropriate entries in a DNS


that map between host names and IP addresses for both IPv4 and IPv6 allow
the applications to choose the required address.

6.3 IPv6 Tunnel Mechanisms:

This section discusses the details about the following IPv6 tunneling techniques
to be used over IPv4 networks. In order to accommodate different administrative
needs, IPv6 transition mechanisms basically include two types of tunnelling:
automatic and configured. The two tunneling techniques -- automatic and
configured differ primarily in how they determine the tunnel endpoint address.

52
IPv6: Technology Whitepaper

6.3.1 Configured tunnels:

Configured tunneling is used if the destination host is different from the endpoint
of the tunnel. In this case, the destination address for the IPv4 header, ie the
address of the endpoint of the tunnel, could not be simply mapped from the IPv6
destination address. The endpoint of the tunnel has to be configured in the
IPv6/IPv4-node. In configured tunneling, the tunnel endpoint address is
determined from configuration information in the encapsulating node. For each
tunnel, the encapsulating node must store the tunnel endpoint address. When
an IPv6 packet is transmitted over a tunnel, the tunnel endpoint address
configured for that tunnel is used as the destination address for the
encapsulating IPv4 header.

The determination of which packets to tunnel is usually made by routing


information on the encapsulating node. This is usually done via a routing table,
which directs packets based on their destination address using the prefix mask

Figure 19: Net Structure for Configured tunnels.

and match technique. To build configured tunnels, administrators manually define


IPv6-to-IPv4 address mappings at tunnel endpoints. On either side of the tunnel,

53
IPv6: Technology Whitepaper

traffic is forwarded with full 128-bit addresses. At the tunnel entry point, a router
table entry is

defined manually to dictate which IPv4 address is used to traverse the tunnel.
This requires a certain amount of manual administration at the tunnel endpoints,
but traffic is routed through the IPv4 topology dynamically, without the knowledge
of IPv4 routers. The 128-bit addresses do not have to align with 32-bit addresses
in any way. Figure 20 shows the configuration of a manually configured tunnel.

Figure 20: Configuration of Manually Configured Tunnel


a. Default configured tunnel.

IPv6/IPv4 hosts that are connected to datalinks with no IPv6 routers MAY use a
configured tunnel to reach an IPv6 router. This tunnel allows the host to
communicate with the rest of the IPv6 Internet (i.e. nodes with IPv6-native
addresses). If the IPv4 address of an IPv6/IPv4 router bordering the IPv6
backbone is known, this can be used as the tunnel endpoint address. This
tunnel can be configured into the routing table as an IPv6 "default route". That is,
all IPv6 destination addresses will match the route and could potentially traverse
the tunnel. The default-configured tunnel can be used in conjunction with
automatic tunneling, as described in section [7.2.2].

b. Default Configured Tunnel using IPv4 "Anycast Address"


The tunnel endpoint address of such a default tunnel could be the IPv4 address
of one IPv6/IPv4 router at the border of the IPv6 backbone. Alternatively, the
tunnel endpoint could be an IPv4 "anycast address". With this approach, multiple
IPv6/IPv4 routers at the border advertise IPv4 reachability to the same IPv4

54
IPv6: Technology Whitepaper

address. All of these routers accept packets to this address as their own, and will
decapsulate IPv6 packets tunneled to this address. When an IPv6/IPv4 node
sends an encapsulated packet to this address, it will be delivered to only one of
the border routers, but the sending node will not know which one. The IPv4
routing system will generally carry the traffic to the closest router.

Using a default tunnel to an IPv4 "anycast address" provides a high degree of


robustness since multiple border router can be provided, and, using the normal
fallback mechanisms of IPv4 routing, traffic will automatically switch to another
router when one goes down. However, care must be taken while using such a
default tunnel to prevent different IPv4 fragments from arriving at different routers
for reassembly. This can be prevented by either avoiding fragmentation of the
encapsulated packets (by ensuring an IPv4 MTU of at least 1300 bytes) or by
preventing frequent changes to IPv4 routing.

6.3.2 Automatic tunnels

Automatic tunneling is used between two IPv6/IPv4-hosts. It is "end-to-end". It


can also be used if a router is going to send an IPv6 packet to an IPv6/IPv4-host
that is connected to the same IPv4 network area. It is important that the endpoint
of the tunnel is the destination host.

55
IPv6: Technology Whitepaper

Figure 21: Net Structure For Automatic Tunnelling


In automatic tunneling, the tunnel endpoint address is determined by the IPv4-
compatible destination address of the IPv6 packet being tunneled. Automatic
tunneling allows IPv6/IPv4 nodes to communicate over IPv4 routing
infrastructures without pre-configuring tunnels.

1. Automatic IPv4-compatible / 6OVER4 tunnelling

Automatic IPv4-compatible tunnels use "IPv4-compatible" addresses, which are


hybrid IPv4/IPv6 addresses. Adding leading zeros to the 32-bit IPv4 address to
pad them out to 128 bits creates compatible addresses. When traffic is forwarded
with compatible addresses, the device at the tunnel entry point can automatically
address encapsulated traffic by simply converting the IPv4-compatible 128-bit
address to a 32-bit IPv4 address. On the other side of the tunnel, the IPv4
header is removed to reveal the original IPv6 address. Figure 22 illustrates the
configuration of IPv4-compatible tunnel.

56
IPv6: Technology Whitepaper

Figure 22: Configuration Of Automatic IPv4-compatible Tunnel.


Automatic tunnelling allows IPv6 hosts to dynamically exploit IPv4 networks, but
it does require the use of IPv4-compatible addresses, which do not bring the
benefits of the128-bit address space.

IPv6 nodes using IPv4-compatible addresses cannot take advantage of the


extended address space, but they can exploit the other IPv6 enhancements,
including flow labels, authentication, encryption, multicast, and anycast.

Once a node is migrated to IPv6 with IPv4-compatible addressing, the door is


open for a fairly painless move to the full IPv6 address space. IPv4-compatible
addressing means that administrators can add IPv6 nodes while initially
preserving their basic addressing and subnet architecture.

Automatic tunnels are available when needed, but they may not be necessary in
cases where major backbone routers are upgraded all at once to include the IPv6
stack. This is something that can be achieved quickly and efficiently when
backbone routers support full remote configuration and upgrade capabilities.

2. Automatic 6to4 Tunnel

An automatic 6to4 tunnel allows isolated IPv6 domains to be connected over an


IPv4 network and allows connections to remote IPv6 networks, such as the
6BONE. The simplest deployment scenario for 6to4 tunnels is to interconnect
multiple IPv6 sites, each of which has at least one connection to a shared IPv4
network. This IPv4 network could be the global Internet or could be a corporate
backbone. The 6to4 tunnel treats the IPv4 infrastructure as a virtual
nonbroadcast link using an IPv4 address embedded in the IPv6 address to find
the other end of the tunnel. Each IPv6 domain requires a dual-stack router that

57
IPv6: Technology Whitepaper

automatically builds the IPv4 tunnel using a unique routing prefix 2002::/16 in the
IPv6 address with the IPv4 address of the tunnel destination concatenated to the
unique routing prefix. The key requirement is that each site has a 6to4 IPv6
address. Each site, even if it has just one public IPv4 address, has a unique
routing prefix in IPv6. Figure 23 shows the configuration of a 6to4 tunnel
interconnecting 6to4 domains.

Figure 23: Configuration Of A 6to4 Tunnel Interconnecting 6to4 Domains


The need for 6to4 Relay Routers

As use of native IPv6 becomes more prevalent, the next stage is the use of 6to4
relay routers. These relay routersstandard routers but with both a 6to4 IPv6
address and a normal IPv6 addressprovide a routing service between the
native IPv6 domain, where a routing protocol is expected to be running, and the
6to4 domain, where there is no routing protocol. Communication between 6to4
sites and native IPv6 domains requires at least one relay router. 6to4 enables the
edge router to forward packets to any destination with a 2002::/16 prefix.
However, other IPv6 destinations are unreachable, unless one of the 6to4 edge
routers, specified as a 6to4 relay, offers traffic forwarding to the IPv6 Internet.

6to4 routers continue to run an IPv6 interior routing protocol for the IPv6 routing
within the site, but participate in IPv6 interdomain routing by using a default IPv6
route that points to a specific relay router. Figure 24 shows the use of a 6to4
relay router for interconnecting 6to4 and native IPv6 domains.

58
IPv6: Technology Whitepaper

Figure 24: Shows The Use Of A 6to4 Relay Router For Interconnecting 6to4 And Native
IPv6 Domains.
3. ISATAP

ISATAP [Intra-Site Automatic Tunnel Addressing Protocol] is an address


assignment and host-to-host, host-to-router, and router-to-host automatic
tunneling technology that is used to provide unicast IPv6 connectivity between
IPv6 hosts across an IPv4 intranet. ISATAP hosts do not require any manual
configuration and create ISATAP addresses using standard address
autoconfiguration mechanisms. Once established as seen in figure 25, adding
IPv6 functionality to nodes within the AS becomes simpler by enabling ISATAP
on that node with no requirements to upgrade the network elements.

ISATAP can be used for communication between IPv6/IPv4 nodes on an IPv4


network. ISATAP addresses use the locally administered interface
identifier ::0:5EFE:w.x.y.z, in which w.x.y.z is any unicast IPv4 address, which
includes both public and private addresses.

The ISATAP interface identifier can be combined with any 64-bit prefix that is
valid for IPv6 unicast addresses. This includes the link-local address prefix
(FE80::/64) and global prefixes (including 6to4 prefixes).

59
IPv6: Technology Whitepaper

Figure 25: ISATAP Tunnel Configuration.


The 6to4 and ISATAP transition mechanisms provide IPv6 connectivity for a node
under three typical scenarios:

An ISP or an enterprise network provides IPv6 connectivity;

The node has access to at least one global IPv4 address;

The enterprise network has deployed an ISATAP router.

Some important features of the ISTAP are as follows

ISATAP is one of the few elements that works with IPv4 private
address space.

However, if a node is part of a private network behind a NAT device


that is not participating in 6to4, these tunneling mechanisms cannot be
used.

ISATAP works well in conjunction with 6TO4 to provide an enterprise


with a very comprehensive IPv6 connectivity schema.

Security issues: use of ISATAP routers by undesirable node.

4. Tunnel Broker:

The Tunnel Broker [Broker] is a tool that automatically manages tunnel requests
using dedicated servers. This reduces the management load for network
administrators, who have to perform extensive configuration for each configured

60
IPv6: Technology Whitepaper

tunnel maintained. It applies well to isolated IPv6 sites, and especially isolated
IPv6 hosts on the IPv4 Internet who want to connect to an IPv6 network.

Tunnel brokering is very simple from the user's point of view and hence good for
isolated users, but it does have some issues regarding states of tunnels - if the
client does not request the tunnel be torn down before ending a session it will
persist and future users of the same IPv4 address may receive encapsulated
IPv6 packets intended for the first user. Figure 26 illustrates the functioning of a
tunnel broker. For a detailed version refer to appendix B.

Figure 26: Functioning of a Tunnel Broker


The main application of tunnel brokering will be for dial-up users of ISPs who will
not be able to reconfigure their tunnels manually every time they connect. 6over4
will not be suitable as they will not be on a multicast network. Hence tunnel
brokering provides a near ideal solution for dial up connections. The Tunnel
Broker is a unique tool in that it doesnt belong on sites or networks, instead sites
and ISPs generally deploy Tunnel Brokers as a service to others.

5. IPv6 over an MPLS Backbone

IPv6 over MPLS backbones enables isolated IPv6 domains to communicate with
each other over an MPLS IPv4 core network. This implementation requires far

61
IPv6: Technology Whitepaper

fewer backbone infrastructure upgrades and lesser reconfiguration of core


routers because forwarding is based on labels rather than the IP header itself,
providing a very cost-effective strategy for the deployment of IPv6. Additionally,
the inherent Virtual Private Network (VPN) and traffic engineering services
available within an MPLS environment allows IPv6 networks to be combined into
VPNs or extranets over an infrastructure supporting IPv4 VPNs and MPLS-TE. A
variety of deployment strategies are available or under development, as follows:

IPv6 using tunnels on the customer edge (CE) routers

IPv6 over a circuit transport over MPLS

IPv6 on the provider edge (PE) routers (known as 6PE)

The first of these strategies has no impact on and requires no changes to the
MPLS provider (P) or PE routers because the strategy uses IPv4 tunnels to
encapsulate the IPv6 traffic, thus appearing as IPv4 traffic within the network.
The second of these strategies also requires no change to the core routing
mechanisms. The last strategy requires changes to the PE routers to support a
dual-stack implementation, but all the core functions remain IPv4.

The following sections describe each mechanism in more detail.

a. Deploying IPv6 Using Tunnels on the Customer Edge Routers

Using tunnels on the CE routers is the simplest way of deploying IPv6 over
MPLS networks, having no impact on the operation or infrastructure of MPLS,
and requiring no changes to either the P routers in the core or the PE routers
connected to the customers. Communication between the remote IPv6 domains
uses standard tunneling mechanisms, running IPv6 over IPv4 tunnels in a similar
way that MPLS VPNs support native IPv4 tunnels. The CE routers need to be
upgraded to be dual stack, and configured using manually configured or 6to4
tunnels, but communication with the PE routers is IPv4, and the traffic appears to
the MPLS domain to be IPv4. The dual stack routers use the 6to4 addresses or
an IPv6 prefix assigned from a distant provider, rather than an IPv6 address
supplied by the service provider. Figure 27 shows an example for the deployment
of IPv6 using tunnels on the CE routers.

62
IPv6: Technology Whitepaper

Figure 27: Deployment Of IPv6 Using Tunnels On The CE Routers


b. Deploying IPv6 over a Circuit Transport over MPLS

Using any circuit transport for deploying IPv6 over MPLS networks has no impact
on the operation or infrastructure of MPLS. It requires no changes to either the P
routers in the core or the PE routers connected to the customers. Communication
between the remote IPv6 domains runs native IPv6 protocols over a dedicated
link, where the underlying mechanisms are fully transparent to IPv6. The IPv6
traffic is tunneled using Any Transport over MPLS (MPLS/AToM) or Ethernet over
MPLS (EoMPLS), with the IPv6 routers connected through an ATM OC-3 or
Ethernet interface, respectively. Figure 28 shows an example of IPv6 deployment
over any circuit transport over MPLS.

63
IPv6: Technology Whitepaper

Figure 28: IPv6 Deployment Over Any Circuit Transport Over MPLS
c. Deploying IPv6 on the Provider Edge Routers

A further deployment strategy is to configure IPv6 on the MPLS PE routers. This


strategy has a major advantage for service providers in that there is no need to
upgrade either the hardware or software of the core network, and it thus
eliminates the impact on the operation of or the revenue generated from the
existing IPv4 traffic. The strategy maintains the benefits of the current MPLS
features (for example, MPLS or VPN services for IPv4) while appearing to
provide a native IPv6 service for enterprise customers (using ISP-supplied IPv6
prefixes). Figure 29 shows the configuration for IPv6 on the PE routers.

Figure 29: Configuration for IPv6 on the PE Router.

64
IPv6: Technology Whitepaper

The IPv6 forwarding is done by label switching, eliminating the need for either
IPv6 over IPv4 tunnels or for an additional Layer 2 encapsulation, allowing the
appearance of a native IPv6 service to be offered across the network. Each PE
router that must support IPv6 connectivity needs to be upgraded to be dual stack
(becoming a 6PE router) and configured to run MPLS on the interfaces
connected to the core. Depending on the site requirements, each router can be
configured to forward IPv6 or IPv6 and IPv4 traffic on the interfaces to the CE
routers, thus providing the ability to offer only native IPv6 or both IPv6 and native
IPv4 services. The 6PE router exchanges either IPv4 or IPv6 routing information
through any of the supported routing protocols, depending on the connection,
and switches IPv4 and IPv6 traffic over the native IPv4 and IPv6 interfaces not
running MPLS. The 6PE router exchanges reachability information with the other
6PE routers in the MPLS domain using multiprotocol BGP, and shares a common
IPv4 routing protocol (such as OSPF or integrated IS-IS) with the other P and PE
devices in the domain.

The 6PE routers encapsulate IPv6 traffic using two levels of MPLS labels. The
top label is distributed by a label distribution protocol (LDP) or tag distribution
protocol (TDP) used by the devices in the core to carry the packet to the
destination 6PE using IPv4 routing information. The second or bottom label is
associated with the IPv6 prefix of the destination through multiprotocol BGP4.

6. Teredo

Teredo, also known as IPv4 network address translator (NAT) traversal for IPv6,
provides address assignment and host-to-host automatic tunneling for unicast
IPv6 connectivity across the IPv4 Internet when IPv6/IPv4 hosts are located
behind one or multiple IPv4 NATs. To traverse IPv4 NATs, IPv6 packets are sent
as IPv4-based User Datagram Protocol (UDP) messages as seen in figure 30. It
is important to note that Teredo is designed as a last resort transition technology
for IPv6 connectivity. If native IPv6, 6to4, or ISATAP connectivity is present
between communicating nodes, Teredo is not used. As more IPv4 NATs are
upgraded to support 6to4 and IPv6 connectivity become ubiquitous, Teredo will

65
IPv6: Technology Whitepaper

be used less and less, until eventually it is not used at all. For more information
on Teredo refer to [IPv6 transition technologies by Microsoft]

Figure 30: Teredo Network deployment


7. Use Of Automatic Tunnels With Default Configured Tunnels

Automatic tunneling is often used in conjunction with the default configured


tunnel technique. "Isolated" IPv6/IPv4 hosts those with no on-link IPv6 routers
-- are configured to use automatic tunneling and IPv4-compatible IPv6
addresses, and have at least one default configured tunnel to an IPv6 router.
That IPv6 router is configured to perform automatic tunneling as well. These
isolated hosts send packets to IPv4-compatible destinations via automatic
tunneling and packets for IPv6-native destinations via the default configured
tunnel. IPv4-compatible destinations will match the 96-bit all-zeros prefix route
discussed in the previous section, while IPv6-native destinations will match the
default route via the configured tunnel. Reply packets from IPv6-native
destinations are routed back to the IPv6/IPv4 router, which delivers them to the
original host via automatic tunneling. Further examples of the combination of
tunneling techniques are discussed in [Routing Aspects of IPv6 Transition", RFC
2185].

6.3.3 Translation

Translation is a mechanism where IPv6 packets are translated by an


intermediate system into IPv4 packets (and vice-versa). This allows v6 and v4

66
IPv6: Technology Whitepaper

machines to communicate, but as with tunneling not all of the advanced


features of IPv6 are available to the application. This will allow newly deployed
IPv6-only nodes to access legacy IPv4-only machines on the Internet.

While IPv4 and IPv6 are not directly compatible it is possible to translate between
them relatively easily. The only problem is that this tends to be inefficient and
slow. Translation between IPv4 and IPv6 can take place at one of three levels:
the IP level, the transport level or the application level.

IP level translation is the simplest and fastest method and involves


converting from one header to the other.

In transport level translation the translator acts as a relay, working on


TCP/UDP flows.

Application level translation is the most complex form and generally


operates in the form of an Application Level Gateway (ALG).

Translation tools may add extra functionality to basic translation, using caches for
example, to improve performance and keep state information.

1. S I I T:

SIIT (Stateless IP/ICMP Translation) [SIIT] describes a method of implementing


an entire translation tool but only specifies the translation part leaving the other
parts it identifies unspecified. As the name suggests, SIIT operates at the IP level
of translation. In SIIT, temporarily assigned IPv4 addresses are used for IPv4-
translated IPv6 addresses and packets travel through a Stateless IP/ICMP
Translator to translate the packet headers between IPv4 and IPv6 and translate
the addresses in those headers between IPv4 addresses on one side and IPv6
addresses on the other. Conceptually there is a SIIT translator on every path out
of the network; although not necessarily on every physical link as routing
techniques can simulate this.

Conceptually an IPv6-only node communicating with an IPv4 node through a


translator will see an IPv4-mapped IPv6 address for the peer and use an IPv4-
translatable address as its local address for that communication. Since it is not
possible to use an IPv4-mapped or an IPv4-compatible address as a destination,

67
IPv6: Technology Whitepaper

when the IPv4 node sends a packet it will be translated and have the IPv4-
translatable address as a destination.

Due to the stateless nature of SIIT it has several advantages over the other
translation tools currently on offer in that it is simpler and therefore may be
quicker. The techniques defined in SIIT have become the basis for most of the
translator services available and many subsequent translators have used them.
While SIIT is not a complete transition tool specification, it has instead found its
role as a guide for translations. While direct implementations of SIIT could be
developed, tools such as NAT-PT (discussed in section[7.3.2]) offer a better
service by building on SIIT.

SIIT may be deployed on sites that require a simple transition tool but are unable
to deploy dual stack, due to problems like limited IPv4 address space, in such a
case SIIT would offer the ideal solution.

2. N A T P T

NAT-PT (Network Address Translation - Protocol Translation) [NAT-PT] builds


upon the existing NAT [NAT] device to provide an IPv4/IPv6 translation tool
based on SIIT translation mechanisms. NAT-PT operates at the application level
because it is implemented in an ALG.

NAT-PT binds addresses on an IPv6 network with addresses on an IPv4 network


to provide transparent routing for packets. Its greatest use is where new hosts
run only native IPv6 or the network has not implemented the dual-stack
approach. NAT-PT uses a pool of IPv4 addresses for assignment to IPv6 nodes
on a dynamic basis as sessions are initiated.

68
IPv6: Technology Whitepaper

Figure 31: Deployment of Ipv6 using NAT-PT


NAT-PT does not affect end nodes but does keep state on each session,
meaning that packets in the same session must pass through the same NAT-PT
device. The operation of NAT-PT is shown in figure 31. This is perhaps the most
useful of the translation tools. The merits of this tool are obvious but as the
authors of the specification [RFC] point out, NAT-PT should not form a permanent
part of the IPv6 network and should be used as an alternative solution in the
absence of more suitable ones. This can in fact be equally applied to most
translation tools. Also, NAT-PT not only suffers the problems common to all
transition tools, it also inherits some due to its commonality to NAT. It also
makes fast re-routing difficult (ALGs are not as fast as IP routers). Another point
to note is that the dedicated server is a single point of failure in the network.
Although allowing security at an application level, NAT-PT inhibits end-to-end
network security, and makes the merging of private-addressed networks
extremely difficult.

3. TCP UDP Relay

The TCP-UDP Relay translation mechanism is similar to NAT-PT in that it


requires a dedicated server and DNS; it translates at the transport layer rather
than the network layer, with the DNS providing the mapping between IPv4 and
IPv6 addresses. The greatest use of this mechanism is for native IPv6 networks
that want to access IPv4-only hosts, such as IPv4 web servers, but without the
expense of upgrading either the IPv6 or IPv4 sides. Implementations of the
TCPUDP relays are freely available from various locations.

69
IPv6: Technology Whitepaper

4. B I S

BIS (Bump-In-the-Stack) [BIS] is a translator that IPv4 or IPv4 or


adopts a unique approach to the problem, the IPv6 IPv6
App App
Bump in the Stack referred to in the title is a BIS BIS

per-host translator. In BIS, all hosts are able to


translate between IPv4 and IPv6 internally IPv6 IPv6
Stack Stack
without the need for specialised servers. This is
achieved by adding segments to the IP stack to
do the translation.
Figure 32: Operation of BIS

BIS offers a very useful translator service, by making each host perform
translation internally. This may significantly improve the network performance.
BIS is actually an extreme extension of the NAT-PT tool, using the same
methods. BIS

actually makes hosts dual stack but because it does so using translation, it is
included here as an application level translator. The operation of BIS is shown in
figure 32.

There are no commercial implementations of BIS currently available despite the


tool being fully defined for some time. One disadvantage of BIS is that it is
implemented on the host as opposed to a single place, increasing maintenance
significantly. As with other translators, BIS is most useful in the earlier stages of
transitioning when the majority of the Internet is IPv4, though it may be of limited
use as long as IPv4 is in operation.

5. T R T

TRT (Transport Relay Translator) [TRT] provides a transport level translator that
relays TCP and UDP connections between IPv4 and IPv6 domains. It operates
on the border of the two domains and acts as an intermediary between them.
The TRT device can be implemented as a single server or as a group since no
state is kept on the flows. TRT is a relatively simple tool as it offers only a basic
level of service, which is to translate TCP/UDP flows. TRT is a solid tool and like
all translators is best employed as a service once transition has been completed
and is useful as a temporary measure to allow IPv4 and IPv6 to interoperate.

70
IPv6: Technology Whitepaper

Both TRT and SOCKS64 (discussed in section [7.]) are examples of relay
translators that provide a convenient method of implementation for transport level
translators.

There are no implementations of TRT to date; it seems likely that this is due to
the fact that TRT is still not fully defined. TRT deployment scenarios are very
similar to those of the other translators listed in this report. This means that it
could be deployed either as the primary interface between an IPv6 site and the
IPv4 world or on a sites network as an additional service. More so than others, it
is the second that TRT may be more suited for, due to the translation taking place
at such a high level.

6. SOCKS 64

SOCKS64 (SOCKS-based IPv6/IPv4 Gateway Mechanism) provides a method of


relaying a flow between IPv4 and IPv6 hosts through the use of a dedicated
SOCKS server. The SOCKS-based IPv6/IPv4 gateway mechanism is used for
communication between IPv4-only and IPv6-only hosts. It consists of additional
functionality in both the end system (client) and the dual-stack router (gateway)
to permit a communications environment that relays two terminated IPv4 and
IPv6 connections at the application layer.

The basic operation dictates that SOCKS-ified hosts forward the packet in one
protocol to a SOCKS server. The server translates the flow into the outgoing
protocol and vice versa. SOCKS64 offers a good interaction tool for sites only if
already employing SOCKSv5. There is a good technical base available and any
SOCKSv5 enabled site already has the necessary infrastructure to deploy this
tool. However, this may be only a small percentage of users and those without
SOCKS may be reluctant to deploy it solely for this purpose in the face of
competition from other translator tools. The operation of SOCK64 is shown in
figure 7. . SOCKS64 both gains and looses from being based upon existing
technology but in the final analysis is suitable for only a small subset of those
wishing to deploy IPv6 and must therefore be considered of only minor interest.

71
IPv6: Technology Whitepaper

This tool has potentially the same value as any other translator tool listed here
but its deployment will be limited due to it being based on previous SOCKS
technology.

Migrating to IPv6 involves the upgrading of applications, hosts, routers, and DNS
to support IPv6, and then converting IPv6/IPv4 nodes to IPv6-only nodes.
Because this migration might take years, IPv4/IPv6 nodes must be able to
coexist over IPv4 infrastructures such as the Internet and private intranets.

7 Appendix
A. The 6bone

The 6bone is an experimental virtual network of nodes that support IPv6 packets,
tunneled together through the existing IPv4 Internet. Most of the nodes are
workstations or similar machines, with IPv6-capable operating systems. The
theory of tunnelling IPv6 packets over an IPv4 network is outlined in Integration
of IPv4 and IPv6 on page 12. The 6bone is part of the transition to IPv6. Its
purpose is to provide an environment in which IPv6 can be tested and
procedures for IPv6 can be developed. When IPv6 is sufficiently developed and
being used widely, the 6bone will probably disappear.

The IPng Transition (NGTRANS) working group of the IETF is now closed.
While an active working group it was under the Operations and Management
Area, and had as its overall goal assisting the transition to IPv6, the next
generation Internet protocol chosen by the IETF community.

The new IPv6 Operations (v6ops) working group of the IETF has essentially
replaced the NGTRANS effort. The difference being that v6ops is focused on
outlining transition scenarios and identifying the specific tools (many from the
NGTRANS effort) that will be used in a transition.

B. Use of EUI-64 Format in IPv6 Addresses

The 64-bit interface identifier in an IPv6 address is used to identify a unique


interface on a link. The interface identifier may also be unique over a broader
scope. In many cases, an interface identifier will be the same as or based on the
link-layer (MAC) address of an interface. As in IPv4, a subnet and should be

72
IPv6: Technology Whitepaper

used as an alternative solution associated with one link. Interface identifiers


used in global unicast and other IPv6 address types must be 64 bits long and
constructed in the EUI-64 format.

The EUI-64 format interface ID is derived from the 48-bit link-layer (MAC)
address by inserting the hex number FFFE between the upper three bytes (OUI
field) and the lower 3 bytes (serial number) of the link layer address.

Figure 33: Formation of an EUI format Interface ID from 48 bit MAC address.
To ensure that the chosen address is from a unique Ethernet MAC address, the
7th bit in the high-order byte is set to 1 (equivalent to the IEEE G/L bit) to indicate
the uniqueness of the 48-bit address.

C. IPv6 Site-Local Unicast Address [Deprecated by IETF]

73
IPv6: Technology Whitepaper

Site-local unicast addresses are similar to the private addresses such as


10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16 used in IPv4 networks. Private
addresses can be used to restrict communication to a specific domain, or to
assign addresses in a site that is not connected to the global Internet, without
requiring a globally unique prefix. IPv6 routers must not advertise routes or
forward packets that have site-local source or destination addresses outside the
site boundary. If the site requires global connectivity in the future, a global unicast
prefix must be assigned to that site. The site-local addressing plan initially
defined for site-local addressing can be directly applied using the global unicast
prefix. A site-local unicast address shown in Figure 3. is an IPv6 unicast address
that uses the prefix range FEC0::/10 (1111 1110 11) and concatenates the subnet
identifier (the16-bit Subnet ID field) with the interface ID in the EUI-64 format.
The site-local unicast address range uses 1/1024 of the total address space.

Figure 34: Format of Site-Local Address.


D. Required Anycast Address

The Subnet-Router anycast address is predefined. Its format is as follows:

Figure 35: Structure of Subnet-Router anycast address.


The "subnet prefix" in an anycast address is the prefix, which identifies a specific
link. This anycast address is syntactically the same as a unicast address for an
interface on the link with the interface identifier set to zero.

74
IPv6: Technology Whitepaper

Packets sent to the Subnet-Router anycast address will be delivered to one


router on the subnet. All routers are required to support the Subnet-Router
anycast addresses for the subnets to which they have interfaces.

The subnet-router anycast address is intended to be used for applications where


a node needs to communicate with any one of the sets of routers.

E. MTU size

IPv6 requires that the link layer support a minimum IPv6 packet size of 1280
bytes. Link layers that do not support this must provide a link layer fragmentation
and reassembly scheme that is transparent to IPv6. For link layers that can
support a configurable MTU size, it is recommended that they be configured with
an MTU size of at least 1500 bytes (the Ethernet II encapsulation IPv6 MTU).
MTU path discovery is recommended. Packet segmentation is not done by IPv6
routers so this must be performed by the host.

The path MTU is discovered through the following process:

The sending node assumes that the path MTU is the link MTU of the
interface on which the traffic is being forwarded.

The sending node sends IPv6 packets at the path MTU size.

If a router on the path is unable to forward the packet over a link with a
link MTU that is smaller than the size of the packet, it discards the IPv6
packet and sends an ICMPV6 Packet Too Big message back to the
sending node. The ICMPV6 Packet Too Big message contains the link
MTU of the link on which the forwarding failed.

The sending node sets the path MTU for packets being sent to the
destination to the value of the MTU field in the ICMPv6 Packet Too Big
message.

F. Mobile IPv6

The real challenge in Mobile IP is retaining the host IP address irrespective of


where the node is connected. MobileIPv6 solves this problem by retaining its

75
IPv6: Technology Whitepaper

home IP address and borrowing a Care-of Address in the subnet it is


connected to.

The components of MobileIPv6 are:

MN [Mobile Node]:

It moves between wireless cells or access points.

Maintains knowledge of HA [Home Agent] and CN [Corresponding


Node].

Secure verification with HA & CN

CN [Corresponding Node]:

Understands how to communicate with MN

1. Either directly through optimization

2. Or indirectly through HA.

Secure verification with MN & HA

HA [Home Agent]: Router on the home network.

Tunnels packets to MN when it is away from home.

Acts as proxy for MN when its away from home.

Maintains current location information for MN

Forwards home network configurations to MN.

Secure verification with MN & CN.

76
IPv6: Technology Whitepaper

Figure 36: Packet Transfer Using Mobileipv6 Technology


Steps to establishing communication with a mobile node:

1. Dynamic Home Agent Discovery.

MN sends HA address discovery request message to the MIPv6 HAs


Anycast address.

One of the HAs responds to the request with a HA address discover reply
message giving a list of HAs.

2. Obtaining Ipv6 Care-Of Address.

When connected to a Foreign Link, MN acquires its CoA through normal


IPv6 stateless / Stateful address autoconfiguration and ND.

In the absence of a Foreign Agent, IPv6 ND & address autoconfiguration


allows hosts to operate in any location without special support.

3. Registration Of Ipv6 CoA.

MN sends its new CoA to HA through a BU [Binding Update]

- IPv6 options must be included in the IPv6 packet.

HA responds with a BA [Binding Acknowledgement].

77
IPv6: Technology Whitepaper

4. Packet Transfer Between MN & HA.

Packets Sent To MN home address

- These packets are delivered to the home network using standard IP


routing.

- Ha intercepts the packets

- The packets are encapsulated and delivered to the CoA via tunnel.

Packets Sent From MN

- The Source Address for the packet is the CoA, Home Address is carried in
the Home Address Destination Options Header.

- The packet is delivered to destination using standard IP routing


mechanism.

G. Dynamic Host Configuration Protocol Version 6

The process for acquiring configuration data for a client is similar to that in IPv4.
However, DHCPv6 uses multicast for many of its messages. Initially, the client
must first detect the presence of routers on the link using neighbor discovery
messages. If a router is found, then the client examines the router
advertisements to determine if DHCP should be used. If the router
advertisements enable use of DHCP on that link or if no router is found, then the
client starts a DHCP solicitation phase to find a DHCP server. The following are
the benefits of DHCPv6:

Provides more control than serverless/stateless auto-configuration

Used in a routerless environment, using only servers

Used concurrently with stateless auto-configuration

Used for renumbering

Used for automatic domain name registration of hosts using dynamic DNS

Used to delegate IPv6 prefix to leaf customer-premise equipment (CPE)


routers

78
IPv6: Technology Whitepaper

H. Address Formation.

The following flow diagram depicts the details of address formation

79
IPv6: Technology Whitepaper

80
IPv6: Technology Whitepaper

8 GLOSSARY:
6BONEAn IPv6 test bed that consists of IPv6 networks. The 6BONE is a
worldwide informal collaborative project, informally operated with oversight from
the IPv6 Working Group of the IETF. Though it started as a virtual network using
IPv6 tunnels or encapsulation over IPv4 networks, it is slowly migrating to native
links for IPv6 transport.

6to4 tunnelAn IPv6 automatic tunneling technique where the tunnel endpoint
is determined by the globally unique IPv4 address embedded in a 6to4 address.
A 6to4 address is a combination of the prefix 2002::/16 and a globally unique 32-
bit IPv4 address. (IPv4-compatible addresses are not used in 6to4 tunneling.)

6to4 relayA 6to4 border router that offers traffic forwarding to the IPv6 Internet
for other 6to4 border routers. A 6to4 relay forwards packets to any destination
that has a 2002::/16 prefix.

A6 recordA Domain Name System (DNS) record that stores IPv6 numbers
used to represent a 128-bit IPv6 address. When an IPv6-aware application wants
to look up the name of an IPv6 server, it could request an A6 record from the
DNS server. The A6 record is not the preferred record for name resolution with
IPv6, because it has been set aside for experimental purpose.

AAAAA Domain Name System (DNS) record that stores IPv6 numbers used to
represent a 128-bit IPv6 address. The AAAA records are used to resolve host
names. This operation is similar to the process where applications request the A
record in IPv4. The AAAA record is the preferred record for name resolution with
IPv6.

Anycast addressAn identifier for a set of interfaces that typically belong to


different nodes. A packet sent to an anycast address is delivered to the closest
interfaceas defined by the routing protocols in useidentified by the anycast
address. See also global unicast address, IPv6 multicast address, link-local
address, site-local address, and solicited-node multicast address.

81
IPv6: Technology Whitepaper

APNICAsia Pacific Network Information Centre. The regional Internet registry


(RIR) responsible for assigning IP addresses to the countries in the Asia Pacific
region.

ARINThe American Registry for Internet Numbers. The regional Internet


registry (RIR) responsible for assigning IP addresses to the countries in the North
and South American regions.

Automatic IPv6 tunnelAn IPv6 tunneling technique (to be deprecated soon),


where the tunnel source and tunnel destination are automatically determined by
using the IPv4 address in the low-order 32 bits of IPv6 addresses using the
specially assigned 6to4 IPv6 prefix 2002::/16. The host or router at each end of
an IPv6 automatic tunnel must support both the IPv4 and IPv6 protocol stacks.
Automatic tunnels can be configured between border routers or between a
border router and a host. See also IPv4-compatible IPv6 address and manually
configured IPv6 tunnel.

BISBump-in-the-Stack. Translation mechanism used for communication


between IPv4 applications on an IPv4-only host and IPv6-only hosts. It uses a
snooping module and an automatically allocated IPv4 address from a pool and
works like a self-translator.

CE routerCustomer edge router is a router that is part of a customer MPLS


network and interfaces to a provider edge (PE) router.

DES: Short for Data Encryption Standard, a popular symmetric-key encryption


method. DES uses a 56-bit key and uses the block cipher method, which breaks
text into 64-bit blocks and then encrypts them.

DSTMDual-Stack Transition Mechanism. A translation mechanism for dual


stack hosts in an IPv6 domain that do not have an IPv4 routing infrastructure, but
need to communicate with IPv4 systems or allow IPv4 applications to run on top
of their IPv6 protocol stack. DSTM operation is based on the use of IPv4-over-
IPv6 tunnels and the temporal allocation of a global IPv4 address to hosts
requiring such communication.

82
IPv6: Technology Whitepaper

Global unicast addressAn IPv6 unicast address similar to a typical IPv4


address. It enables aggregation of routing prefixes in order to limit the number of
routing table entries in the global routing table. See also anycast address, IPv6
multicast address, link-local address, and site-local address.

GRE tunnelA manually configured tunnel, particularly suitable for use with the
IS-IS protocol. The GRE tunnel is not tied to a specific passenger or transport
protocol, but in this case carries IPv6 traffic as the passenger protocol over GRE
as the carrier protocol. Generic routing encapsulation is a network protocol that
allows any arbitrary passenger protocol to be sent over any carrier protocol.

IANAInternet Assigned Numbers Authority. Responsible for assigning unique


parameter values to Internet protocols.

IETFInternet Engineering Task Force. International group of network


researchers, designers, operators, and vendors responsible for the design and
engineering of TCP/IP and the global Internet.

IPv4-compatible IPv6 addressAn IPv6 unicast address that has zeros in the
high-order 96 bits of the address and an IPv4 address in the low-order 32 bits of
the address. The format of an IPv4-compatible IPv6 address is
0:0:0:0:0:0:A.B.C.D or ::A.B.C.D, where A.B.C.D represents the IPv4 address.
The entire 128-bit IPv4-compatible IPv6 address is used as the IPv6 address of a
node, and the IPv4 address embedded in low-order 32-bits is used as the IPv4
address of the node. IPv4-compatible IPv6 addresses are assigned to nodes that
support both the IPv4 and IPv6 protocol stacks, and are used in automatic
tunneling. See also anycast address, automatic IPv6 tunnel, IPv6 multicast
address, link-local address, and site-local address.

IPv6 multicast addressAn IPv6 address with a prefix of FF00::/8. An IPv6


multicast address is an identifier for a set of interfaces that typically belong to
different nodes. A packet sent to a multicast address is delivered to all interfaces
identified by the multicast address. See also global unicast address, anycast
address, link-local address, site-local address, and solicited-node multicast
address.

83
IPv6: Technology Whitepaper

ISATAPA transition mechanism used for deploying IPv6, particularly in the


campus network environment. ISATAP enables incremental deployment of IPv6
by treating the IPv4 infrastructure of the site as a nonbroadcast multiaccess
(NBMA) link layer.

LinkLinks are networks arbitrarily segmented by a network administrator in


order to provide a multilevel, hierarchical routing structure while shielding the
subnetwork from the addressing complexity of attached networks. Similar to a
subnetwork in IPv4. A subnetwork prefix is associated with one link, but multiple
subnetwork prefixes may be assigned to the same link.

Link-local addressAn IPv6 unicast address that has a scope limited to the
local link (local network). Link-local addresses are automatically configured on all
IPv6 interfaces by using a specific prefix for link-local addresses (FE80::/10) and
adding the interface ID in the modified EUI-64 format. Link-local addresses are
used by the neighbor discovery protocol and the router discovery protocol. They
are also used by many routing protocols.

Link-local addresses can serve as a way to connect devices on the same local
network without needing global addresses. See also global unicast address,
anycast address, IPv6 multicast address, site-local address, and solicited-node
multicast address.

MD5 : An algorithm created in 1991 by Professor Ronald Rivest that is used to


create digital signatures. It is intended for use with 32 bit machines and is safer
than the MD4 algorithm, which has been broken. MD5 is a one-way hash
function, meaning that it takes a message and converts it into a fixed string of
digits, also called a message digest.

When using a one-way hash function, one can compare a calculated message
digest against the message digest that is decrypted with a public key to verify
that the message hasn't been tampered with. This comparison is called a
"hashcheck."

Manually configured IPv6 tunnelAn IPv6 tunneling technique where a


manually configured IPv6 address is configured on a tunnel interface and
manually configured IPv4 addresses are assigned to the tunnel source and the

84
IPv6: Technology Whitepaper

tunnel destination. The host or router at each end of a configured tunnel must
support both the IPv4 and IPv6 protocol stacks. Manually configured tunnels can
be configured between border routers or between a border router and a host.
See also automatic IPv6 tunnel.

MPLSMultiprotocol Label Switching. A switching technique that forwards IP


traffic using a label. This label instructs the routers and the switches in the
network where to forward the packets based on preestablished IP routing
information.

NAT-PTNetwork address translation-protocol translation. A translation


mechanism that translates at the network layer between IPv4 and IPv6
addresses and allows native IPv6 hosts and applications to communicate with
native IPv4 hosts and applications. An Application Level Gateway (ALG)
translates between the IPv4 and IPv6 DNS requests and responses.

One-Way Hash Function: An algorithm that turns messages or text into a fixed
string of digits, usually for security or data management purposes. The "one way"
means that it's nearly impossible to derive the original text from the string. A one-
way hash function is used to create digital signatures, which in turn identify and
authenticate the sender and message of a digitally distributed message.

SIITStateless IP/ICMP Translator. An algorithm that translates, on a packet-by-


packet basis, the headers in the IP packet between IPv4 and IPv6, and translates
the addresses in the headers between IPv4 and either IPv4-translated or IPv4-
mapped IPv6 addresses.

RIPE NCC Reseaux IP Europeens_Network Coordination Center (RIPE NCC).


The regional Internet registry (RIR) responsible for assigning IP addresses to the
countries in Europe and the Middle East site-local addressAddress that is
useful only in the context of the site and is similar to the private addresses in
IPv4. Its scope is limited to this context. When configured, a site-local address
uses a specific prefix (FEC0::/10) and concatenates the subnet ID as a 16-bit
field and then the interface ID in the modified EUI-64 format. See also anycast
address, global unicast address, IPv6 multicast address, link-local address, and
solicited-node multicast address.

85
IPv6: Technology Whitepaper

Solicited-node multicast addressAn IPv6 address that has the prefix


FF02:0:0:0:0:1:FF00:0000/104 concatenated with the 24 low-order bits of a
corresponding IPv6 unicast or anycast address. The solicited-node multicast
address is a multicast group that corresponds to an IPv6 unicast or anycast
address. Solicited-node multicast addresses are used in neighbor solicitation
messages. See also anycast address, global unicast address, IPv6 multicast
address, link-local address, and site-local address.

TCP-UDP RelayTranslation mechanism similar to NAT-PT. It requires a


dedicated server and DNS; it translates at the transport layer rather than the
network layer, with the DNS again providing the mapping between IPv4 and IPv6
addresses.

Teredo tunnelThe Teredo (also known as Shipworm) service is a tunnel


mechanism that provides IPv6 connectivity to nodes located behind one or more
IPv4 NATs by tunneling IPv6 packets over UDP through NATs.

86
IPv6: Technology Whitepaper

9 References:
RFCs and Drafts
Rationale and Case for IPv6

The Recommendation for the IP Next-Generation Protocol: [RFC 1752]

The Case for IPv6: draft-iab-case-for-ipv6-06.txt

Protocols

Internet Protocol Version 6 (IPv6) Specification:[ RFC 2460]

IPv6 Address Types

IP Version 6 Addressing Architecture:[ RFC 1884 / RFC 2373 / RFC 3513]

An IPv6 Aggregatable Global Unicast Address Format:[ RFC 2374 / RFC 3587].

Deprecating site local address [RFC 3879]

Host Anycasting service [RFC 1546]

IPv6 Multicast Address assignments[ RFC 2375]

Unique local IPv6 unicast address internet-draft

IAB/IESG Recommendation On IPv6 Address Allocation

IPv6 Autoconfiguration and Renumbering

Neighbor Discovery for IP Version 6 (IPv6): [RFC 2461]

IPv6 Stateless Address Autoconfiguration: [RFC 2462]

Books & articles


Understanding IP Addressing: Everything You Ever Wanted To Know - 3COM

ISOC Member briefings

Cisco Press-Routing TCPIP Vol II - JeffDoyle

IP Next Generation Overview - Robert M. Hinden

Introduction to IPv6 - Hubert Feyrer

Understanding IPv6 - Joseph davis.

87
IPv6: Technology Whitepaper

APNIC document IPV6 Address Allocation And Assignment Policy.

Web sites:
www.ipv6Style.jp

www.ipv6.org

www.6journal.com

www.ipv6forum.org

www.tcpipguide.com

10 Further recommended reading:


Transmission of IPv6 Packets over Ethernet Networks: [RFC 2464]

Transmission of IPv6 Packets over FDDI Networks: [RFC 2467]

Transmission of IPv6 Packets over Token Ring Networks: [RFC 2470]

Transmission of IPv6 over IPv4 Domains without Explicit Tunnels: [RFC 2529]

Transmission of IPv6 Packets over ARCnet Networks: [RFC 2497]

IP Version 6 over PPP:[ RFC 2472]

IPv6 over Non-broadcast Multiple Access (NBMA) Networks: [RFC 2491]

IPv6 over ATM Networks:[ RFC 2492]

Transmission of IPv6 Packets over Frame Relay Networks Specification: [RFC


2590]

88

You might also like