spppcontrol - display or set parameters for an sppp interface
spppcontrol [-v] ifname [parameter[=value]] [...]
The sppp(4) driver might require a number of additional arguments or optional
parameters besides the settings that can be adjusted
ifconfig(8). These are things like authentication protocol
but also other tunable configuration variables. The
can be used to display the current settings, or adjust these
For whatever intent spppcontrol is being called, at least
ifname needs to be specified, naming the interface for which
are to be performed or displayed. Use ifconfig(8) or netstat(1) to see
which interfaces are available.
If no other parameter is given, spppcontrol will just list
settings for ifname and exit. The reported settings include
PPP phase the interface is in, which can be one of the names
establish, authenticate, network, or terminate. If an authentication
protocol is configured for the interface, the name of the
protocol to be
used, as well as the system name to be used or expected will
plus any possible options to the authentication protocol if applicable.
Note that the authentication secrets (sometimes
are not being returned by the underlying system call, and
are thus not
If any additional parameter is supplied, superuser privileges are required,
and the command works in `set' mode. This is normally done quietly,
unless the option -v is also enabled, which will cause
printout of the settings as described above once all other
been taken. Use of this mode will be rejected if the interface is currently
in any other phase than dead. Note that you can
force an interface
into dead phase by calling ifconfig(8) with the parameter `down'.
The currently supported parameters include:
Set both, his and my authentication protocol
The protocol name can be one of `chap', `pap',
In the latter case, the use of an authentication protocol
will be turned off for the named interface.
This has the
side effect of clearing the other authentication-related
parameters for this interface as well (i.e.,
and authentication secret will be forgotten).
Same as above, but only for my end of the
link. I.e., this
is the protocol when remote is authenticator,
and I am the
peer required to authenticate.
Same as above, but only for his end of the
Set my system name for the authentication protocol.
Set his system name for the authentication
CHAP, this will only be used as a hint, causing a warning
message if remote did supply a different name.
it's the name remote must use to authenticate
connection with his secret).
Set my secret (key, password) for use in the
phase. For CHAP, this will be used to compute
hash value, based on remote's challenge. For
PAP, it will
be transmitted as plain text together with the
Don't forget to quote the secrets from the
shell if they
contain shell metacharacters (or whitespace).
Same as above.
Same as above, to be used if we are authenticator and the
remote peer needs to authenticate.
Same as above.
callin Require remote to authenticate himself only
when he's calling
in, but not when we are caller. This is
some peers that do not implement the authentication protocols
symmetrically (like Ascend routers, for
always The opposite of callin. Require remote to always authenticate,
regardless of which side is placing the
is the default, and will not be explicitly
Only meaningful with CHAP. Do not re-challenge peer once
the initial CHAP handshake was successful.
Used to work
around broken peer implementations that can't
re-challenged once the connection is up.
With CHAP, send re-challenges at random intervals while the
connection is in network phase. (The intervals are currently
in the range of 300 through approximately 800 seconds.)
This is the default, and will not be
displayed in `list' mode.
# spppcontrol bppp0
hisauthproto=chap hisauthname="ifb-gw" norechallenge
Display the settings for bppp0. The interface is currently
phase, i.e., the LCP layer is down, and no traffic is possible. Both
ends of the connection use the CHAP protocol, my end tells
system name `uriah', and remote is expected to authenticate
by the name
`ifb-gw'. Once the initial CHAP handshake was successful,
CHAP challenges will be transmitted. There are supposedly
CHAP secrets for both ends of the link which are not being
# spppcontrol bppp0 authproto=chap
myauthname=uriah myauthsecret='some secret' hisauthname=ifb-gw hisauthsecret='another' norechallenge
A possible call to spppcontrol that could have been used to
bring the interface
into the state shown by the previous example.
netstat(1), sppp(4), ifconfig(8)
B. Lloyd and W. Simpson, PPP Authentication Protocols, RFC
W. Simpson, Editor, The Point-to-Point Protocol (PPP), RFC
W. Simpson, PPP Challenge Handshake Authentication Protocol
The spppcontrol utility appeared in FreeBSD 3.0.
The program was written by Joerg Wunsch, Dresden.
OpenBSD 3.6 October 11, 1997
[ Back ]