Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Standard view
Full view
of .
Look up keyword
Like this
0 of .
Results for:
No results containing your search query
P. 1


Ratings: (0)|Views: 305|Likes:
Published by api-19505025

More info:

Published by: api-19505025 on Dec 03, 2009
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





Internet Protocol version 6
Luke Cole<cole@lc.homedns.org>
1st of September, 2006
1 IPv6 address text representation
IPv6 addresses have the following text representation[Hinden and Deering,
x: x: x: x: x: x: x: x

where,x is a 16-bit hexdecimal number. There are two special cases for simplying the IPv6 text representation when many zero\u2019s exist within the address. The \ufb01rst special case uses the notation :: to represent one or more sets of 16-bit zero addresses. So an address of the form: 0 : 0 : 0 : 0 : 0 : 0 : 0 : 1 can be written as :: 1. The second speical case uses the notation:

x: x: x: x: x: x: d.d.d.d

where,x is a 16-bit hexdecimal number andd is a 8-bit. This address repre- sentation having four 8-bit number is the standard IPv4 representation which allows IPv4 and IPv6 environments to exist together.

2 Multiple::

The IPv6 address 1::234::5::6 is not legal because there is no way to determine the number of sets of zeros for each of the three ::. If we expand this address with the minimum number of zeros, i.e. 1 : 0 : 234 : 0 : 5 : 0 : 6, one can see the \ufb01nal 16-bit zero address could be located in three locations, which gives three posiable solutions, which is not legal.

3 IPv6 Address Space

The earth surface (including land and water) is 510065600km2[Wikipedia, 2006a] and the address space of IPv6 is 128-bit. So through simple division their is approximately 6.5x1023 addresses per square metre of the Earth\u2019s surface including land and water[asmithmd1 and PKFC, 2006; Dean, 2005; Robertson, 2003; Morton, 1997; Culpan, 2004; Microsoft, 2004; con, 2006].

4 TCP Transport Layer Changes for IPv6

\u201cMost transport- and application-layer protocols need little or no change to work over IPv6; exceptions are applications protocols that embed network- layer addresses (such as FTP or NTPv3; NTPv4 supports IPv6).\u201d[Wikipedia, 2006b].

5 Sockets Application Program Interface (API)
Changes for IPv6

Those parts of the API that expose the addresses must be changed to ac- commodate the larger IPv6 address size. IPv6 also introduces new features, some of which must be made visible to applications via the API.

Core socket functions - These functions need not change for IPv6, but a
new IPv6-speci\ufb01c address data structure is needed.
Address data structures - a new address data structure must be de\ufb01ned
for IPv6.

Name-to-address translation functions - gethostbyname() and gethost- byaddr(). These are left as is, and new functions are de\ufb01ned which support both IPv4 and IPv6. gethostbyname() uses getaddrinfo() now.

Address conversion functions - IPv4 uses inetntoa() and inet addr(). We have designed two analogous functions that convert both IPv4 and IPv6 addresses, and carry an address type parameter so that they can be extended to other protocol families as well.

Extra - A new interface is needed to support the IPv6 hop limit header \ufb01eld. New socket options are needed to control the sending and receiving of IPv6 multicast packets.

[Gilliganet al., 1999; 2003;?; Stevenset al., 2003]
6 DNS and IPv6

For the Domain Name System (DNS) to support IPv6 names and addresses, it must be extened to support 128-bit addresses, since the DNS was originally designed to only return 32-bit addresses. Three extensions are required to support the 128-bit address space[Thomson and Huitema, 1995; Thomson

et al., 2003]: The \ufb01rst is a new resource record type to map domain names

to IPv6 addresses. The second is a new domain must be de\ufb01ned to support lookups based on addresses. Finally queries, originally for IPv4, must be rede\ufb01ned to handle IPv6 addresses, along with support for IPv4 addresses.

The new resource record de\ufb01ned to support IPv6 is labelledAAAA, as opposed toA in IPv4. TheAAAA type is used in the same way as theA type however 128-bit addresses are used instead of 32-bit addresses. This enables a DNS to perform IPv6 address lookups given a domain name.

To perform domain name lookups given an IPv6 address a special domain is setup, which was originally rooted at IP6.INT, but has now been replaced with IP6.ARPA, following the depreciation of IP6.INT that is now truly obsolete as of the 1st June, 2006[Sun, 2006; Bush, 2001; Thomsonet al., 2003]. The IP6.ARPA represents IPv6 addresses by a sequence of single hexadecimal numbers separated by dots and with a su\ufb03x of.IP6.ARPA. The sequence of single hexadecimal numbers is the IPv6 in reverse order. So the IPv6 address 3133 : 7 : 0 : 9 : 9 : 42 : 666 : 77aa is represented as

7 IPv6 through IPv4 networks

For IPv6 packets from IPv6 islands to reach other IPv6 islands through a IPv4 ocean a technique to perform the IPv6 transition over IPv4 networks is known as \u201cIPv6 over IPv4 tunneling, which carries IPv6 packets within IPv4 packets\u201d[Kinget al., 1999; IPNGBone, 2006]. IPv6 over IPv4 tunneling is performed without any change to the IPv4 infrastructure and its components. The router between the IPv4 ocean and the IPv6 island encapsulates the IPv6 packet within IPv4 packets and then sent as normal IPv4 through the IPv4 ocean. When the encapsulated IPv6 packet enters another IPv6 island, another router decapsulates the packet and the packet is then sent through the IPv6 network as a normal IPv6 packet.

The router that performs the transition of packets between the IPv4 ocean and IPv6 island uses protocol number 41, however if this port is blocked other schemes such as AYIYA or GRE can be applied[Wikipedia, 2006b]. There is no e\ufb00ect to the MTU however the overhead almost doubles[Raicu and


Activity (8)

You've already reviewed this. Edit your review.
1 thousand reads
1 hundred reads
Mathish liked this
Mathish liked this
divinp liked this
SONU02 liked this
dhiren_vasoya liked this

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->