NAME¶
ng_gif —
generic tunnel interface netgraph node type
SYNOPSIS¶
#include
<netgraph/ng_gif.h>
DESCRIPTION¶
The
ng_gif netgraph node type allows
gif(4) interfaces to interact with the
netgraph(4) networking subsystem. Once the
ng_gif module is loaded in the kernel, a
node is automatically created for each
gif(4)
interface in the system. Each node will attempt to name itself with the same
name as the associated interface. All
ng_gif nodes are persistent for as long as
the interface itself exists.
Two hooks are supported:
lower and
orphans. The hook name
divert may be used as an alias for
lower, and is provided for compatibility
with
ng_ether(4). In reality the two names
represent the same hook.
The
lower hook is a connection to the raw
gif(4) device. When connected, all incoming
packets are diverted out this hook. Writing to this hook results in a raw
encapsulated packet being transmitted by the device. Normal outgoing packets
are not affected by
lower being connected.
The
orphans hook is equivalent to
lower, except that only unrecognized
packets (that would otherwise be discarded) are written to the hook, and
normal incoming traffic is unaffected. At most one of
orphans and
lower may be connected at any time.
In all cases, frames are raw packets with the address family of the packet
attached to the front.
When no hooks are connected, packets flow normally upwards and downwards.
HOOKS¶
This node type supports the following hooks:
- lower
- Connection to the lower device link layer.
- orphans
- Like
lower, but only receives
unrecognized packets.
CONTROL MESSAGES¶
This node type supports only the generic control messages.
EXAMPLES¶
This command dumps all unrecognized packets received by the
gif0 interface to standard output decoded in hex and
ASCII:
nghook -a gif0: orphans
SEE ALSO¶
gif(4),
netgraph(4),
netintro(4),
ifconfig(8),
ngctl(8),
nghook(8)
AUTHORS¶
Brooks Davis
⟨brooks@FreeBSD.org⟩