ng_sppp(4)

NAME

ng_sppp - sppp netgraph node type

SYNOPSIS

#include <netgraph/ng_sppp.h>

DESCRIPTION

An sppp node is a netgraph(4) interface to the original
sppp(4) network
module for synchronous lines. Currently, sppp(4) supports
PPP and Cisco
HDLC protocols. An sppp node could be considered as an al
ternative kernel mode PPP implementation to net/mpd port + ng_ppp(4), and
as an alternative to ng_cisco(4) node. While having less features than
net/mpd +
ng_ppp(4), it is significantly easier to use in the majority
of simple
configurations, and allows the administrator to not install
the net/mpd
port. With sppp you do not need any other nodes, not even
an ng_iface(4)
node. When an sppp node is created, a new interface appears
which is
accessible via ifconfig(8). Network interfaces correspond
ing to sppp
nodes are named sppp0, sppp1, etc. When a node is shut
down, the corresponding interface is removed, and the interface name be
comes available
for reuse by future sppp nodes. New nodes always take the
first unused
interface. The node itself is assigned the same name as its
interface,
unless the name already exists, in which case the node re
mains unnamed.
The sppp node allows drivers written to the old sppp(4) in
terface to be
rewritten using the newer more powerful netgraph(4) inter
face, and still
behave in a compatible manner without supporting both net
work modules.
An sppp node has a single hook named downstream. Usually it
is connected
directly to a device driver hook.
The sppp nodes support the Berkeley Packet Filter, bpf(4).

HOOKS

This node type supports the following hooks:

downstream The connection to the synchronous line.

CONTROL MESSAGES

This node type supports the generic control messages, plus
the following:
NGM_IFACE_GET_IFNAME
Returns the name of the associated interface as a
NUL-terminated
ASCII string. Normally this is the same as the name
of the node.

SHUTDOWN

This node shuts down upon receipt of a NGM_SHUTDOWN control
message. The
associated interface is removed and becomes available for
use by future
sppp nodes.
Unlike most other node types and like ng_iface(4) does, an
sppp node does
not go away when all hooks have been disconnected; rather,
an explicit
NGM_SHUTDOWN control message is required.

EXAMPLES

For example, if you have the cx(4) device, you could run PPP
over it with
just one command:

ngctl mkpeer cx0: sppp rawdata downstream
Now you have the sppp0 interface (if this was the first sppp
node) which
can be accessed via ifconfig(8) as a normal network inter
face, or via
spppcontrol(8) as an sppp(4) interface.

SEE ALSO

bpf(4), cx(4), netgraph(4), ng_cisco(4), ng_iface(4),
ng_ppp(4), sppp(4),
ifconfig(8), ngctl(8), spppcontrol(8)
For complex networking topologies you may want to look at
net/mpd port.

HISTORY

The sppp node type was implemented for FreeBSD 5.0. It was
included to
the system since FreeBSD 5.3.

AUTHORS

Copyright (C) 2003-2004 Roman Kurakin <rik@cronyx.ru>.
BSD February 3, 2005
Copyright © 2010-2024 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout