Internet Protocol Version 6 (IPv6)



 

  • Voice / IP Fax / Internet
  • Tri-band WCDMA (850/1900/2100)
  • Quad band GSM (850/900/1800/1900)
  • HSDPA/EDGE/GPRS Data
  • RJ11 Interface
  • USB 2.0 Interface
  • Ethernet Port
  • 4 port 10/100 Mbit Router
  • WiFi 802.11


Ericsson W25


Applications

Buy Now



IP Version 6 is the next generation of IP (protocol) and Address assignment on the Internet. Eventually everyone will be using IPv6 addresses. The current version is IPv4 and is rapidly running out of IP Address blocks to assign to networks. For this reason the Next Generation of IP Addressing and Internet Routing has been created.

By default right now you are on the IPv4 Internet and you do not have access to the IPv6 Internet. It is possible to get on the IPv6 Internet and I can tell you how. In short IPv6 provides a huge increase in the amount of IP Address Space on the Internet. Even a small organization or a single user can get a large chunk of IPv6 address space and connect other computers to the Internet.

My example of the Turtle Dancing on http://www.kame.net was a way to show whether or not you could reach the IPv6 Internet. If the turtle does not dance on that web page then you are not on IPv6 you are only on IPv4.

 

 

 

Alan Spicer Telecom has an Internet Protocol Version 6 (IPv6) address and the corresponding hostname:

 

Hostname: <I'll leave this out for now, I'm working on some security issues>

 

IPv6 IP Address:<I'll leave this out for now, I'm working on some security issues>

 

I am also experimenting with a larger assignment of IP Address Space. What's cool about that is that I can have lots and lots of real Internet IP Addresses (65,536 sub networks of near 18,446,744,073,709,551,616 IP Addresses.)


What many of you will immediately realize, and some not, is that this eliminates the need to do some kludgy address translations that are currently done in IPv4 networks. Most of your routers and Windows XP as Connection Sharing are doing 2 things:

1.) NAT - Network Address Translation - works with Private Addressing (#2 below) and translates you back-and-forth  to the "Real Internet IP Address".
2.) RFC 1918 Private IP Addressing - There are several chunks of IP Address Space set aside for private networks. The most common one seen on consumer level Routers and Wireless Access Points is: 192.168.x.x (the last two vary depending on the setup). These addresses on their own are not routeable on the *real* Internet. Something has to translate them and assist you in communicating. This is what we call a "kludge".

In IPv6 there are so many addresses that this is simply not necessary. Everyone, every device, ("probably every transistor" -- someone said) can have it's own *real* Internet address without the need of Address Translation conversions. That's pretty cool!

 

Freenet6 basically assigns me, upon my request (automatically by software), and without hassle (like hassle associated with getting Static IP Addresses from your ISP!), a Global Address Prefix called a "48" or "/48". That means they give me a Route off of their system that is advertised to the Global Internet (Anyone with IPv6 capability can reach it.) That is:

 

My Global Routing Prefix <I'll leave this out for now, I'm working on some security issues>

 

Each pair of 4 hexadecimal characters is 16 bits. The first 3  represents the 48 bits prefix, which is why they call it a /48 or a "48". Inside of that is 80 more bits, of which 16 bits is Subnet ID (something I can configure how ever I want) and 64 bits is Interface ID, for any computer or device that I want to put the Internet.

 

Subnet: 2^16th power = 65536 networks I can have.

Interface ID: 2^64th = 18,446,744,073,709,551,616 connected devices (network cards) I can have.

 

Call your ISP one day and ask them for a live static IP and ask how much it costs? Then tell them, oh forget it, I've got trillions of static IP addresses already myself. Have a nice day.

 

Of course to do what I am doing with the "48 prefix" requires you to run "something" as a router that understand IPv6, and just as important something that can run IPv6 Router Advertisement service. I don't know how yet to do that with Microsoft Windows. Chances are I'll probably find out soon enough. (Update: This can be done with Windows; the software from Freenet6 sets this up for you. I haven't tested this personally though.) **** Another update on this please see: Update About Windows XP.

 

For now I am using the Linux Operating System on another PC to do this via the RADVD - Route Advertising Daemon, which is basically a Server program. It sends Router Advertisement messages, specified by RFC 2461, to a local Ethernet LAN periodically and when requested by a node sending a Router Solicitation message.

 

That's bunch of complicated gobble-de-gook to some people but basically you can think of RADVD as a sort DHCP Server. The similarities being that it does say "I'm an Ipv6 Router" (analogous to DHCP telling "set me as your Default Gateway"), it does say "This is our network prefix" (analogous to "your IP is", and "your subnet mask is"). Basically it says "if you want, go ahead and auto-configure yourself on this network prefix and set me as your IPv6 Gateway to the world". It's not DHCP in the strictest sense since there is a DHCPv6 protocol specification out there. But you should get the picture anyway.

 

You can get your own IPv6 account from http://www.freenet6.net/ at no cost (It's FREE) which will give you a Username and Password, as well as let you download their software program to put your computer on the IPv6 Internet. For all that hard work that you will do, (You've got to turn on IPv6 in Windows XP as well if that's what you use!) really it's not as hard as you would think, you may just impress your friends or get a free beer or coffee from someone. Here's some information taken from a Microsoft Web Site:

 

IPv6 Addressing

The most obvious distinguishing feature of IPv6 is its use of much larger addresses. The size of an address in IPv6 is 128 bits, which is four times larger than an IPv4 address. A 32-bit address space includes 232 or 4,294,967,296 possible addresses. A 128-bit address space includes 2128 or 340,282,366,920,938,463,463,374,607,431,768,211,456 (or 3.4 x 1038) possible addresses.

The IPv4 address space was designed in the late 1970s, and it seemed impossible to exhaust. However, addresses were not allocated in a way that anticipated changes in technology and an explosion in the number of hosts on the Internet. The IPv4 address space was consumed to the point that, by 1992, it clearly needed a replacement.

It is even harder to conceive that the IPv6 address space will be consumed. A 128-bit address space provides 655,570,793,348,866,943,898,599 (6.5 x 1023) addresses for every square meter of the Earth's surface.

It is important to remember that the decision to make the IPv6 address 128 bits long was not so that every square meter of the Earth could have 6.5 x 1023 addresses. Rather, the relatively large size of the IPv6 address is designed to be subdivided into hierarchical routing domains that reflect the topology of the modern Internet. The use of 128 bits allows multiple levels of hierarchy and flexibility in designing hierarchical addressing and routing that is currently lacking in the IPv4-based Internet.

RFC 3513 describes the IPv6 addressing architecture.

IPv6 Address Syntax

IPv4 addresses are represented in dotted-decimal format. These 32-bit addresses are divided along 8-bit boundaries. Each set of 8 bits is converted to its decimal equivalent and separated from the other sets by periods. For IPv6, the 128-bit address is divided along 16-bit boundaries. Each 16-bit block is converted to a 4-digit hexadecimal number and separated by colons. The resulting representation is known as colon-hexadecimal.

The following is an IPv6 address in binary form:

0010000111011010000000001101001100000000000000000010111100111011
0000001010101010000000001111111111111110001010001001110001011010   

The 128-bit address is divided along 16-bit boundaries:

0010000111011010  0000000011010011  0000000000000000  0010111100111011  0000001010101010  0000000011111111  1111111000101000  1001110001011010 

Each 16-bit block is converted to hexadecimal and delimited with colons. The result is:

21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A

IPv6 representation can be further simplified by removing the leading zeros within each 16-bit block. However, each block must have at least a single digit. With leading zero suppression, the address representation becomes:

21DA:D3:0:2F3B:2AA:FF:FE28:9C5A

Compressing Zeros

Some types of addresses contain long sequences of zeros. To further simplify the representation of IPv6 addresses, a contiguous sequence of 16-bit blocks set to 0 in the colon-hexadecimal format can be compressed to "::," known as double-colon.

For example, the link-local address of FE80:0:0:0:2AA:FF:FE9A:4CA2 can be compressed to FE80::2AA:FF:FE9A:4CA2. The multicast address FF02:0:0:0:0:0:0:2 can be compressed to FF02::2.

Zero compression can be used to compress only a single contiguous series of 16-bit blocks expressed in colon-hexadecimal notation. You cannot use zero compression to include part of a 16-bit block. For example, you cannot express FF02:30:0:0:0:0:0:5 as FF02:3::5.

To determine how many 0 bits are represented by the double colon, you can count the number of blocks in the compressed address, subtract this number from 8, and then multiply the result by 16. For example, the address FF02::2 has two blocks (the "FF02" block and the "2" block.) The number of 0 bits expressed by the double colon is 96 (96 = (8 - 2) x 16).

Zero compression can be used only once in a given address. Otherwise, you could not determine the number of 0 bits represented by each double colon.

IPv6 Prefixes

The prefix is the part of the address that indicates which bits have fixed values or reflect the subnet identifier. Prefixes for IPv6 subnet identifiers and routes are expressed in the same way as Classless Inter-Domain Routing (CIDR) notation for IPv4, that is, in address/prefix-length notation. For example, 21DA:D3::/48 is a route prefix and 21DA:D3:0:2F3B::/64 is a subnet prefix.

Note


IPv4 implementations commonly use a dotted decimal representation of the network prefix known as the subnet mask. IPv6 does not support subnet masks. IPv6 supports only the prefix-length notation.

Types of IPv6 Addresses

IPv6 supports three types of addresses:


Unicast

A unicast address identifies a single interface within the scope of the type of unicast address. With the appropriate unicast routing topology, packets addressed to a unicast address are delivered to a single interface. To accommodate load-balancing systems, RFC 3513 allows multiple interfaces to use the same address as long as they appear as a single interface to the IPv6 implementation on the host.


Multicast

A multicast address identifies multiple interfaces. With the appropriate multicast routing topology, packets addressed to a multicast address are delivered to all interfaces that are identified by the address. A multicast address is used for one-to-many communication, with delivery to multiple interfaces.


Anycast

An anycast address identifies multiple interfaces. With the appropriate routing topology, packets addressed to an anycast address are delivered to a single interface, the nearest interface that is identified by the address. The nearest interface is defined as being closest in terms of routing distance. An anycast address is used for one-to-one-of-many communication, with delivery to a single interface.

IPv6 addresses always identify interfaces, not nodes. A node is identified by any unicast address that is assigned to one of its interfaces.

 

This is only a portion of: http://www.microsoft.com/technet/prodtechnol/windowsserver2003/library/TechRef/9bcf5d01-a1df-4053-939b-904e20753553.mspx

 

http://www.microsoft.com/ipv6/

 

If you want to learn more about it you can check out those web pages. Or search with your favorite search engine.

 

**** Here's the update ... This is an important and interesting information because it basically says that Windows XP can automatically get connected to IPv6 if the machine running XP is directly on the Internet itself (routers and Wireless AP's connected to Cable and DSL, etc. don't count here, I mean the machine has the Broadband Connection Directly itself. Meaning it has an IPv4 Internet Address in "ipconfig".) I believe this only works in Windows Update Service Pack 2 (SP2) because I don't believe I saw this in SP1.


I kept wondering why when I enable IPv6 in my machine connected directly to DSL, it gets its own tunnel for IPv6, and this was messing with the tunnel that I set up on a Linux box. I finally packet sniffed and caught 206.123.31.116 (tsps3.freenet6.net) as being a tunnel connection being established. I searched on Google.com for the port 3653 (udp) being used and found:

http://www.bekkoame.ne.jp/~s_ita/port/port3600-3699.html which says the service is tsp:



3653 tcp/udp tsp Tunnel Setup Protocol
 

TSP is the name used by Freenet6. So I go looking further to see what Microsoft is setting up automatically and how that relates to Freenet6? They must have an arrangement with Freenet6 (hexago.com)? I open up Services on Windows XP and start to look for a "tsp" service ... but first I can't believe what I see! IPv6 Helper Service. So I search again on Google.com for that. And this is the first thing I find. This page is for Windows CE, but I bet it is about Windows XP as well. It tells that Windows XP can become a 6to4 router. I had a little bit of trouble finding links that tell much about this IPv6 Helper Service. This seems to be one of the few links that describe what's going on *really*. I suspect that Tunnel Server has changed from what they tell us below, because I got: tsp3.freenet6.net (206.123.31.116). As far as I know I'm not running any software on my system from Freenet6 directly. When I turn off the IPv6 Helper Service (Start, Run, services.msc, find IPv6 Helper Service and set it to "manual" startup and stopped it) the tunnel goes away along with all of the 2001: IPv6 Addresses. This must be hard coded into the service, what server to use. If someone knows better than this I'd appreciate a note. I don't necessarily like my Ipv6 Service configured and routed by the Operating System Maker even if it does still use Freenet6. Also I think 2001: IPv6 Addresses are more *real* IPv6 Addresses than 2002: ones are. (why I think that I may qualify at a later date.) The following described

IPv6 Helper Service

is also in Windows XP SP2, although the article is about Windows CE.

 

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcetcpip/html/cmconipv6trafficbetweennodesindifferentsitesacrossinternet6to4.asp

 

IPv6 Helper Service

By using automatic IPv6 Helper service configuration, any host that is running the IPv6 protocol and is configured with an IPv4 public address is automatically configured as a 6to4 host. A 6to4 host can perform its own tunneling to reach either 6to4 hosts in other sites or hosts on the test Internet (6bone). The following list shows the tasks IPv6 Helper service performs automatically:

By enabling Internet Connection Sharing (ICS), you can use a computer running the IPv6 protocol for Windows XP as a 6to4 router. This computer can both encapsulate and forward 6to4 traffic to other 6to4 hosts or sites on the Internet, and can forward 6bone traffic to a 6to4 relay router on the Internet. The following list shows the tasks the IPv6 Helper service performs if ICS is enabled on an interface that is assigned a public IPv4 address:

See Also

IPv6 Configurations | Connecting to the Test Internet (6bone) | IPv6 RFCs and Internet Drafts


eXTReMe Tracker