6over4
From Wikipedia, the free encyclopedia
| IPv6 transition mechanisms |
|---|
| Standards Track |
| Experimental |
| Informational |
| Drafts |
| Deprecated |
6over4 is an IPv6 transition mechanism meant to transmit IPv6 packets between dual-stack nodes on top of a multicast-enabled IPv4 network. IPv4 is used as a virtual data link layer (virtual Ethernet) on which IPv6 can be run.
Link-local address generation
6over4 defines a trivial method for generating a link-local IPv6 address from an IPv4 address, and a mechanism to perform Neighbor Discovery on top of IPv4.
Any host wishing to participate in 6over4 over a given IPv4 network can set up a virtual IPv6 network interface. The link-local address is determined as follows :
- it starts with
fe80:0000:0000:0000:0000:0000, orfe80::for short, - the lower-order 32 bits to the binary value must be that of the IPv4 address of the host.
For example, host 192.0.2.142 would use fe80:0000:0000:0000:0000:0000:c000:028e as its link-local IPv6 address (192.0.2.142 is c000028e in hexadecimal notation). A shortened notation would be fe80::c000:028e.
Multicast Address Mapping
To perform ICMPv6 Neighbor Discovery, multicast must be used. Any IPv6 multicast packet gets encapsulated in an IPv4 multicast packet with destination 239.192.x.y, where x and y are the penultimate and last bytes of the IPv6 multicast address respectively.
Examples
All-Nodes Multicast (ff02::1) - 239.192.0.1
All-Routers Multicast (ff02::2) - 239.192.0.2
Solicited Node Multicast for fe80::c000:028e (the link-local address of 192.0.2.142) - 239.192.2.142
Neighbor Discovery
Given a link-local address and a multicast addresses mapping, a host can use ICMPv6 to discover its on-link neighbors and routers, and usually perform stateless autoconfiguration, as it would do on top of, e.g. Ethernet.