SPPPTUN(8) Maintenance Commands and Procedures SPPPTUN(8)
sppptun - PPP tunneling driver utility
sppptun plumb
sppptun plumb [-s sap] protocol device
sppptun unplumb interface
sppptun query
The sppptun utility is used to configure and query the Solaris PPP
tunneling device driver, /dev/sppptun. Currently, only PPP over
Ethernet (PPPoE) is supported, so the plumb and unplumb arguments are
used to specify Ethernet interfaces that are to be used for PPPoE,
and the query option lists the plumbed interfaces.
The use of sppptun to add interfaces is similar to the use of
ifconfig(8) to add interfaces to IP. The plumbing is done once for
each interface, preferably at system start-up time, and is not
normally manipulated on a running system. If multiple instances of
PPP are run over a single interface, they share the plumbing to that
interface. Plumbing for each session is not required (and not
possible for PPPoE).
The proper way to plumb interfaces for PPPoE is to list the
interfaces, one per line, in the /etc/ppp/pppoe.if file. If alternate
Ethertype (SAP) values are necessary, then include the PPPoE Session
and Discovery Stage values as hexadecimal on the same line. The line
format is:
interface [session [discovery]]
The defaults are the Ethertypes specified in RFC 2516, and most users
should not need to set these values. See the examples for one
possible use.
sppptun plumb
When specified with no additional arguments, the plumb argument
lists the protocols that are supported by the utility. These are
the strings that are used as the protocol argument below.
sppptun plumb [-s sap] protocol device
This plumbs a new interface into the driver. The protocol
parameter is pppoe for the PPP-carrying "Session Stage"
connection or pppoed for the PPPoE "Discovery Stage" connection.
Both connections must be present for each Ethernet interface that
is to be used for PPPoE. The device parameter is the path name of
the Ethernet interface to use (use ifconfig(8) to list available
devices). If the path begins with /dev/, then this portion may be
omitted.
The -s sap option can be specified to use an alternate Ethertype
(SAP) for the selected protocol. The sap value must be given in
hexadecimal. Some access servers use Ethertypes for PPPoE
different from those in RFC 2516. The defaults are 8864 for pppoe
and 8863 for pppoed.
sppptun unplumb interface
This removes an existing interface from the driver and terminates
any PPP sessions that were using the interface. The interface
parameter is the name of the interface as reported when the
interface was plumbed.
sppptun query
Displays the canonical names of all interfaces plumbed into the
/dev/sppptun device driver.
Plumb the hme0 interface.
# sppptun plumb pppoed hme0
hme0:pppoed
# sppptun plumb pppoe hme0
hme0:pppoe
Remove the hme0 interface.
# sppptun unplumb hme0:pppoed
# sppptun unplumb hme0:pppoe
#!/bin/sh
for intf in `sppptun query`
do
sppptun unplumb $intf
done
# dladm show-link
LINK CLASS MTU STATE OVER
nge0 phys 1500 up --
# echo nge0 3c13 3c12 > /etc/ppp/pppoe.if
The following exit values are returned:
0
Successful completion.
1
One or more errors occurred.
/etc/ppp/pppoe.if
list of Ethernet interfaces to be plumbed at
boot time
/usr/sbin/sppptun
executable command
/dev/sppptun
Solaris PPP tunneling device driver
sppptun(4M), pppd(8), pppoec(8), pppoed(8)
RFC 2516, Method for Transmitting PPP Over Ethernet (PPPoE), Mamakos
et al, February 1999
May 27, 2009 SPPPTUN(8)
NAME
sppptun - PPP tunneling driver utility
SYNOPSIS
sppptun plumb
sppptun plumb [-s sap] protocol device
sppptun unplumb interface
sppptun query
DESCRIPTION
The sppptun utility is used to configure and query the Solaris PPP
tunneling device driver, /dev/sppptun. Currently, only PPP over
Ethernet (PPPoE) is supported, so the plumb and unplumb arguments are
used to specify Ethernet interfaces that are to be used for PPPoE,
and the query option lists the plumbed interfaces.
The use of sppptun to add interfaces is similar to the use of
ifconfig(8) to add interfaces to IP. The plumbing is done once for
each interface, preferably at system start-up time, and is not
normally manipulated on a running system. If multiple instances of
PPP are run over a single interface, they share the plumbing to that
interface. Plumbing for each session is not required (and not
possible for PPPoE).
The proper way to plumb interfaces for PPPoE is to list the
interfaces, one per line, in the /etc/ppp/pppoe.if file. If alternate
Ethertype (SAP) values are necessary, then include the PPPoE Session
and Discovery Stage values as hexadecimal on the same line. The line
format is:
interface [session [discovery]]
The defaults are the Ethertypes specified in RFC 2516, and most users
should not need to set these values. See the examples for one
possible use.
USAGE
sppptun plumb
When specified with no additional arguments, the plumb argument
lists the protocols that are supported by the utility. These are
the strings that are used as the protocol argument below.
sppptun plumb [-s sap] protocol device
This plumbs a new interface into the driver. The protocol
parameter is pppoe for the PPP-carrying "Session Stage"
connection or pppoed for the PPPoE "Discovery Stage" connection.
Both connections must be present for each Ethernet interface that
is to be used for PPPoE. The device parameter is the path name of
the Ethernet interface to use (use ifconfig(8) to list available
devices). If the path begins with /dev/, then this portion may be
omitted.
The -s sap option can be specified to use an alternate Ethertype
(SAP) for the selected protocol. The sap value must be given in
hexadecimal. Some access servers use Ethertypes for PPPoE
different from those in RFC 2516. The defaults are 8864 for pppoe
and 8863 for pppoed.
sppptun unplumb interface
This removes an existing interface from the driver and terminates
any PPP sessions that were using the interface. The interface
parameter is the name of the interface as reported when the
interface was plumbed.
sppptun query
Displays the canonical names of all interfaces plumbed into the
/dev/sppptun device driver.
EXAMPLES
Example 1: Setting up to Use PPPoE on hme0
Plumb the hme0 interface.
# sppptun plumb pppoed hme0
hme0:pppoed
# sppptun plumb pppoe hme0
hme0:pppoe
Remove the hme0 interface.
# sppptun unplumb hme0:pppoed
# sppptun unplumb hme0:pppoe
Example 2: Script to Remove All Plumbed Interfaces
#!/bin/sh
for intf in `sppptun query`
do
sppptun unplumb $intf
done
Example 3: Interoperating with 3COM HomeConnect Dual Link ADSL
# dladm show-link
LINK CLASS MTU STATE OVER
nge0 phys 1500 up --
# echo nge0 3c13 3c12 > /etc/ppp/pppoe.if
EXIT STATUS
The following exit values are returned:
0
Successful completion.
1
One or more errors occurred.
FILES
/etc/ppp/pppoe.if
list of Ethernet interfaces to be plumbed at
boot time
/usr/sbin/sppptun
executable command
/dev/sppptun
Solaris PPP tunneling device driver
SEE ALSO
sppptun(4M), pppd(8), pppoec(8), pppoed(8)
RFC 2516, Method for Transmitting PPP Over Ethernet (PPPoE), Mamakos
et al, February 1999
May 27, 2009 SPPPTUN(8)