interface is a generic tunnelling
pseudo-device for IPv4 and IPv6. It can tunnel IPv over IPv with
behavior mainly based on RFC 4213 IPv6-over-IPv4, for a total of four possible
interface can be created at runtime using the
command or by setting up a
configuration file for
interface must be configured with the
addresses used for the outer header. This can be done by using
command (which uses the
The addresses of the inner header must be configured by using
in the normal way.
The routing table can be used to direct packets toward the
E. Nordmark and
R. Gilligan, Basic Transition
Mechanisms for IPv6 Hosts and Routers, RFC
4213, October 2005.
device first appeared in WIDE hydrangea
supported RFC 3378 EtherIP tunnels
is now handled by etherip(4)
There are many tunnelling protocol specifications, defined differently from each
may not interoperate with peers which
are based on different specifications, and are picky about outer header
fields. For example, you cannot usually use gif
to talk with IPsec devices that use IPsec tunnel mode.
The current code does not check if the ingress address (outer source address)
configured to gif
makes sense. Make sure to
configure an address which belongs to your node. Otherwise, your node will not
be able to receive packets from the peer, and your node will generate packets
with a spoofed source address.
If the outer protocol is IPv6, path MTU discovery for encapsulated packet may
affect communication over the interface.