GIF(4)                    OpenBSD Programmer's Manual                   GIF(4)

NAME
     gif - generic tunnel interface

SYNOPSIS
     pseudo-device gif [count]

DESCRIPTION
     The gif interface is a generic tunnelling pseudo-device for IPv4 and
     IPv6.  It can tunnel IPv[46] traffic over IPv[46], for a total of four
     possible combinations.  The behavior of gif is mainly based on RFC1933
     IPv6-over-IPv4 configured tunnel.

     To use gif, the administrator needs to configure the addresses used for
     the outer header.  This can be done by using ifconfig(8), or through the
     SIOCSIFPHYADDR ioctl.  The administrator needs to also configure the ad-
     dresses used for the inner header, by using ifconfig(8). Note that IPv6
     link-local address (those start with fe80::) will be automatically con-
     figured whenever possible.  One may need to remove any IPv6 link-local
     address manually using ifconfig(8), to disable the use of IPv6 as inner
     header (e.g., when a pure IPv4-over-IPv6 tunnel is required). Also, the
     routing table may be used to route the packets toward the gif interface.

     Finally, the gif interface may be used as a bridge(4) member.  Ethernet
     frames forwarded by the bridge to the gif interface are encapsulated in-
     side an IPv4 or IPv6 header (depending on how the interface is config-
     ured), with transport protocol number 97 (etherip).  IPv4 or IPv6 packets
     carrying transport protocol 97 are delivered to the gif interface whose
     "physical" addresses match the source/destination addresses of the packet
     (the source address of the packet must match the destination "physical"
     address, and vice versa).

SEE ALSO
     inet(4), inet6(4), ifconfig(8)

     R. Gilligan, and E. Nordmark, "Transition Mechanisms for IPv6 Hosts and
     Routers", RFC1933, April 1996, ftp://ftp.isi.edu/in-notes/rfc1933.txt.

     Sally Floyd, David L. Black, and K. K. Ramakrishnan, IPsec Interactions
     with ECN, December 1999, draft-ietf-ipsec-ecn-02.txt.

HISTORY
     The gif device first appeared in WIDE hydrangea IPv6 kit.

BUGS
     There are many tunnelling protocol specifications, defined differently
     from each other.  gif 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 ad-
     dress 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.

     When used in conjunction with the bridge(4), only one bridge tunnel may
     be operational for every pair of source/destination addresses.  If more
     than one gif interface is configured with the same pair of outer address-
     es, the one with the lowest index number will receive all traffic.

OpenBSD 2.9                     April 10, 1999                               1
