2004-05-16 14:41:20 +00:00
|
|
|
.\" Copyright (C) 2003-2004 Cronyx Engineering.
|
|
|
|
.\" Copyright (C) 2003-2004 Roman Kurakin <rik@cronyx.ru>
|
|
|
|
.\"
|
|
|
|
.\" This software is distributed with NO WARRANTIES, not even the implied
|
|
|
|
.\" warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
.\"
|
|
|
|
.\" Authors grant any other persons or organisations a permission to use,
|
|
|
|
.\" modify and redistribute this software in source and binary forms,
|
|
|
|
.\" as long as this message is kept with the software, all derivative
|
|
|
|
.\" works or modified versions.
|
|
|
|
.\"
|
|
|
|
.\" Cronyx Id: ng_sppp.4,v 1.1.2.3 2004/03/30 14:28:34 rik Exp $
|
|
|
|
.\" $FreeBSD$
|
|
|
|
.\"
|
|
|
|
.Dd March 29, 2004
|
|
|
|
.Dt NG_SPPP 4
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
|
|
|
.Nm ng_sppp
|
|
|
|
.Nd sppp netgraph node type
|
|
|
|
.Sh SYNOPSIS
|
|
|
|
.In netgraph/ng_sppp.h
|
|
|
|
.Sh DESCRIPTION
|
|
|
|
An
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
2004-05-16 14:41:20 +00:00
|
|
|
node is a
|
|
|
|
.Xr netgraph 4
|
|
|
|
interface to the original
|
|
|
|
.Xr sppp 4
|
2004-07-03 18:29:24 +00:00
|
|
|
network module for synchronous lines.
|
2004-07-09 07:26:15 +00:00
|
|
|
Currently,
|
2004-05-16 14:41:20 +00:00
|
|
|
.Xr sppp 4
|
2004-07-09 07:26:15 +00:00
|
|
|
supports PPP and Cisco HDLC protocols.
|
2004-05-16 14:41:20 +00:00
|
|
|
An
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
|
|
|
node could be considered as an alternative kernel mode PPP
|
2004-05-16 14:41:20 +00:00
|
|
|
implementation to
|
2004-07-09 07:26:15 +00:00
|
|
|
.Pa net/mpd
|
|
|
|
port +
|
|
|
|
.Xr ng_ppp 4 ,
|
2004-05-16 14:41:20 +00:00
|
|
|
and as an alternative to
|
|
|
|
.Xr ng_cisco 4
|
|
|
|
node.
|
2004-07-09 07:26:15 +00:00
|
|
|
While having less features than
|
|
|
|
.Pa net/mpd
|
|
|
|
+
|
2004-05-16 14:41:20 +00:00
|
|
|
.Xr ng_ppp 4 ,
|
2004-07-09 07:26:15 +00:00
|
|
|
it is significantly easier to use in the majority of simple configurations,
|
|
|
|
and allows the administrator to not install the
|
|
|
|
.Pa net/mpd
|
|
|
|
port.
|
2004-05-16 14:41:20 +00:00
|
|
|
With
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
|
|
|
you do not need any other nodes, not even an
|
2004-05-16 14:41:20 +00:00
|
|
|
.Xr ng_iface 4
|
|
|
|
node.
|
|
|
|
When an
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
2004-05-16 14:41:20 +00:00
|
|
|
node is created, a new interface appears which is accessible via
|
|
|
|
.Xr ifconfig 8 .
|
2004-07-09 07:26:15 +00:00
|
|
|
Network interfaces corresponding to
|
|
|
|
.Nm sppp
|
|
|
|
nodes are named
|
|
|
|
.Li sppp0 , sppp1 ,
|
2004-05-16 14:41:20 +00:00
|
|
|
etc.
|
2004-07-09 07:26:15 +00:00
|
|
|
When a node is shut down, the corresponding interface is removed,
|
2004-05-16 14:41:20 +00:00
|
|
|
and the interface name becomes available for reuse by future
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
2004-05-16 14:41:20 +00:00
|
|
|
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 remains unnamed.
|
|
|
|
The
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
|
|
|
node allows drivers written to the old
|
|
|
|
.Xr sppp 4
|
|
|
|
interface to be rewritten using the
|
2004-05-16 14:41:20 +00:00
|
|
|
newer more powerful
|
|
|
|
.Xr netgraph 4
|
2004-07-09 07:26:15 +00:00
|
|
|
interface, and still behave in a compatible manner without supporting both
|
2004-05-16 14:41:20 +00:00
|
|
|
network modules.
|
|
|
|
.Pp
|
|
|
|
An
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
|
|
|
node has a single hook named
|
|
|
|
.Va downstream .
|
2004-07-03 18:29:24 +00:00
|
|
|
Usually it is connected directly to
|
2004-05-16 14:41:20 +00:00
|
|
|
a device driver hook.
|
|
|
|
.Pp
|
2004-07-09 07:26:15 +00:00
|
|
|
The
|
|
|
|
.Nm sppp
|
|
|
|
nodes support the Berkeley Packet Filter,
|
|
|
|
.Xr bpf 4 .
|
2004-05-16 14:41:20 +00:00
|
|
|
.Sh HOOKS
|
|
|
|
This node type supports the following hooks:
|
2004-07-09 07:26:15 +00:00
|
|
|
.Bl -tag -width ".Va downstream"
|
|
|
|
.It Va downstream
|
2004-05-16 14:41:20 +00:00
|
|
|
The connection to the synchronous line.
|
|
|
|
.El
|
|
|
|
.Sh CONTROL MESSAGES
|
|
|
|
This node type supports the generic control messages, plus the following:
|
2004-07-09 07:26:15 +00:00
|
|
|
.Bl -tag -width indent
|
2004-05-16 14:41:20 +00:00
|
|
|
.It Dv NGM_IFACE_GET_IFNAME
|
|
|
|
Returns the name of the interface corresponding to this node in a
|
2004-07-09 07:26:15 +00:00
|
|
|
.Vt "struct ng_iface_ifname" :
|
|
|
|
.Bd -literal -offset indent
|
2004-05-16 14:41:20 +00:00
|
|
|
struct ng_iface_ifname {
|
|
|
|
char ngif_name[NG_SPPP_IFACE_NAME_MAX + 1];
|
|
|
|
};
|
|
|
|
.Ed
|
|
|
|
.El
|
|
|
|
.Sh SHUTDOWN
|
|
|
|
This node shuts down upon receipt of a
|
|
|
|
.Dv NGM_SHUTDOWN
|
2004-07-03 18:29:24 +00:00
|
|
|
control message.
|
|
|
|
The associated interface is removed and becomes available
|
2004-05-16 14:41:20 +00:00
|
|
|
for use by future
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
2004-05-16 14:41:20 +00:00
|
|
|
nodes.
|
|
|
|
.Pp
|
|
|
|
Unlike most other node types and like
|
|
|
|
.Xr ng_iface 4
|
|
|
|
does, an
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
2004-05-16 14:41:20 +00:00
|
|
|
node does
|
|
|
|
.Em not
|
2004-07-09 07:26:15 +00:00
|
|
|
go away when all hooks have been disconnected; rather, an explicit
|
2004-05-16 14:41:20 +00:00
|
|
|
.Dv NGM_SHUTDOWN
|
|
|
|
control message is required.
|
|
|
|
.Sh EXAMPLES
|
2004-07-09 07:26:15 +00:00
|
|
|
For example, if you have the
|
|
|
|
.Xr cx 4
|
|
|
|
device, you could run PPP over it with just one command:
|
2004-05-16 14:41:20 +00:00
|
|
|
.Pp
|
2004-07-09 07:26:15 +00:00
|
|
|
.Dl "ngctl mkpeer cx0: sppp rawdata downstream"
|
2004-05-16 14:41:20 +00:00
|
|
|
.Pp
|
2004-07-09 07:26:15 +00:00
|
|
|
Now you have the
|
|
|
|
.Li sppp0
|
|
|
|
interface (if this was the first
|
|
|
|
.Nm sppp
|
|
|
|
node) which can be
|
|
|
|
accessed via
|
|
|
|
.Xr ifconfig 8
|
|
|
|
as a normal network interface,
|
2004-05-16 14:41:20 +00:00
|
|
|
or via
|
2004-07-09 07:26:15 +00:00
|
|
|
.Xr spppcontrol 8
|
|
|
|
as an
|
|
|
|
.Xr sppp 4
|
|
|
|
interface.
|
2004-05-16 14:41:20 +00:00
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr bpf 4 ,
|
2004-07-04 20:55:50 +00:00
|
|
|
.Xr cx 4 ,
|
2004-05-16 14:41:20 +00:00
|
|
|
.Xr netgraph 4 ,
|
|
|
|
.Xr ng_cisco 4 ,
|
|
|
|
.Xr ng_iface 4 ,
|
|
|
|
.Xr ng_ppp 4 ,
|
2004-07-04 20:55:50 +00:00
|
|
|
.Xr sppp 4 ,
|
2004-05-16 14:41:20 +00:00
|
|
|
.Xr ifconfig 8 ,
|
2004-07-04 20:55:50 +00:00
|
|
|
.Xr ngctl 8 ,
|
2004-05-16 14:41:20 +00:00
|
|
|
.Xr spppcontrol 8
|
|
|
|
.Pp
|
|
|
|
For complex networking topologies you may want to look at
|
2004-07-04 20:55:50 +00:00
|
|
|
.Pa net/mpd
|
|
|
|
port.
|
2004-05-16 14:41:20 +00:00
|
|
|
.Sh HISTORY
|
|
|
|
The
|
2004-07-09 07:26:15 +00:00
|
|
|
.Nm sppp
|
2004-05-16 14:41:20 +00:00
|
|
|
node type was implemented for
|
|
|
|
.Fx 5.0 .
|
|
|
|
It was included to the system since
|
2004-07-02 19:07:33 +00:00
|
|
|
.Fx 5.3 .
|
2004-07-09 07:26:15 +00:00
|
|
|
.Sh AUTHORS
|
|
|
|
Copyright (C) 2003-2004
|
|
|
|
.An Roman Kurakin Aq rik@cronyx.ru .
|