Internet Protocol version 6 (IPv6) is a network layer protocol for packet-switched internetworks. It is designated as the successor of IPv4, the current version of the Internet Protocol, for general use on the Internet.
The main improvement brought by IPv6 is a much larger address space that allows greater flexibility in assigning addresses. IPv6 is able to support 2^128 (about 3.4 x 10^38) addresses, or approximately 5 x 10^28 addresses for each of the roughly 6.5 billion people[1] alive today. It was not the intention of IPv6 designers, however, to give permanent unique addresses to every individual and every computer. Rather, the extended address length eliminates the need to use network address translation to avoid address exhaustion, and also simplifies aspects of address assignment and renumbering when changing providers.
IPv4 Header
4 |
8 |
16 |
32 bits |
Ver. |
IHL |
Type of service |
Total length |
Identification |
Flags |
Fragment offset |
Time to live |
Protocol |
Header checksum |
Source address |
Destination address |
Option + Padding |
Data |
IPv4
header structure |
IPv6 Header
4 |
8 |
16 |
24 |
32 bits |
Ver. |
Priority |
Flow label |
Payload length |
Next header |
Hop limit |
Source address
(128 Bits)
|
Destination address
(128 bits)
|
IPv6
header structure |
Today the internet runs over a IPv4 backbone, the internet was supposed to have run out years ago. But NAT and dynamic IP allocations have slowed down the utilisation of available address space.
Today there are a number of free tunnel brokers that enable networks to create an IPv6 tunnel over IPv4. Typically a IPv6/64 address is allocated.
IPv6 Prefix Allocation --------------------------------------
0000::/8 Reserved by IETF
2000::/3 Global Unicast
3FFE::/32 6Bone (No longer used after 6-Jun-06)
FC00::/7 Unique Local Unicast
FE80::/10 Link Local Unicast
FF00::/8 Multicast
These blocks are reserved for examples
and documentation
---------------------------------------
3fff:ffff::/32
2001:0DB8::/32 EXAMPLENET-WF
Cisco IOS config - Hurricane Internet (Dynamic IP address)
ipv6 unicast-routing
ipv6 cef
!
interface Tunnel66
description Hurricane Electric IPv6 Tunnel Broker
no ip address
ipv6 address 2001:470:1F00:FFFF::1BEF/127
ipv6 enable
tunnel source OUTSIDE_IP_ADDRESS
tunnel destination TUNNEL_PROVIDERS_IP_ADDRESS
tunnel mode ipv6ip
!
ip ddns update method HE-IPV6
HTTP
add https://ipv4.tunnelbroker.net/ipv4_end.php?ipv4b=<a>&\
pass=*result_md5_hash*6&user_id=*real_user_id*&tunnel_id=*real_tunel_id*
interval maximum 0 6 0 0
!
interface Dialer1
ip ddns update HE-IPV6
end
Cisco IOS config - Hurricane Internet (With BGPv6)
ipv6 unicast-routing
ipv6 cef
!
interface Tunnel66
description Hurricane Electric IPv6 Tunnel Broker
no ip address
ipv6 address 2001:470:1F00:FFFF::1BEF/127
ipv6 enable
tunnel source OUTSIDE_IP_ADDRESS
tunnel destination TUNNEL_PROVIDERS_IP_ADDRESS
tunnel mode ipv6ip
!
router bgp 64111
bgp log-neighbor-changes
neighbor 2001:470:1F00:FFFF::1BEE remote-as 6939
!
address-family ipv4
no neighbor 2001:470:1F00:FFFF::1BEE activate
no auto-summary
no synchronization
exit-address-family
!
address-family ipv6
neighbor 2001:470:1F00:FFFF::1BEE activate
distance bgp 255 255 255
exit-address-family |