# 6over4

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/6over4
> Markdown URL: https://mediated.wiki/source/6over4.md
> Source: https://en.wikipedia.org/wiki/6over4
> Source revision: 1208960006
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

{{Short description|IPv6 transition mechanism}}
{{IPv6 transition mechanisms}}
'''6over4''' is an [IPv6](/source/IPv6) [transition mechanism](/source/IPv6) meant to transmit IPv6 [packet](/source/Packet_(information_technology))s between [dual-stack](/source/dual-stack) nodes on top of a [multicast](/source/multicast)-enabled [IPv4](/source/IPv4) network. IPv4 is used as a virtual [data link layer](/source/data_link_layer) (''virtual [Ethernet](/source/Ethernet)'') on which  IPv6 can be run.

==How 6over4 works==
6over4 defines a trivial method for generating a link-local IPv6 address from an IPv4 address, and a mechanism to perform [Neighbor Discovery](/source/Neighbor_Discovery_Protocol) on top of IPv4.

===Link-local address generation===
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 <code>fe80:0000:0000:0000:0000:0000</code>, or <code>fe80::</code> for short,
* the lower-order 32 bits to the binary value must be that of the IPv4 address of the host.

For example, host <code>192.0.2.142</code> would use <code>fe80:0000:0000:0000:0000:0000:c000:028e</code> as its link-local IPv6 address (<code>192.0.2.142</code> is <code>c000028e</code> in [hexadecimal](/source/hexadecimal) notation). A shortened notation would be <code>fe80::c000:028e</code>.

===Multicast Address Mapping===
To perform [ICMPv6](/source/ICMPv6) Neighbor Discovery, multicast must be used. Any IPv6 multicast packet gets encapsulated in an IPv4 multicast packet with destination <code>239.192.x.y</code>, where <code>x</code> and <code>y</code> are the penultimate and last bytes of the IPv6 multicast address respectively.
====Examples====

All-Nodes Multicast (ff02::1) - <code>239.192.0.1</code>

All-Routers Multicast (ff02::2) - <code>239.192.0.2</code>

Solicited Node Multicast for fe80::c000:028e (the link-local address of 192.0.2.142) - <code>239.192.2.142</code>

===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](/source/Ethernet).

==Limit of 6over4==
6over4 relies on IPv4 multicast availability which is not very widely supported by IPv4 networking infrastructure. 6over4 is of limited practical use, and is not supported by the most common [operating system](/source/operating_system)s.
To connect IPv6 hosts on different physical links, IPv4 multicast routing must be enabled on the routers connecting the links.

[ISATAP](/source/ISATAP) is a more complex alternative to 6over4 which does not rely on IPv4 multicast.

==References==
* B. Carpenter & C. Jung ''Transmission of IPv6 over IPv4 Domains without Explicit Tunnels'' {{IETF RFC|2529}}, March 1999.

== See also ==
* [4over6](/source/4over6)

Category:IPv6 transition technologies

---
Adapted from the Wikipedia article [6over4](https://en.wikipedia.org/wiki/6over4) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/6over4?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
