Sun Microsystems, Inc.
spacerspacer
spacer www.sun.com docs.sun.com |
spacer
black dot
 
 
36.  Solaris PPP 4.0 Reference Creating an IP Addressing Scheme for Callers Assigning Static IP Addresses to Callers  Previous   Contents   Next 
   
 

Assigning IP Addresses by sppp Unit Number

If you are using either PAP or CHAP authentication, you can assign IP addresses to callers by the sppp unit number. The next table shows an example of this usage.

Caller

Server

Password

IP Addresses

myclient

ISP-server

mypassword

10.10.111.240/28+

The plus (+) indicates that the unit number is added to the IP address. Addresses 10.10.111.240 through 10.10.111.255 are assigned to remote users. sppp0 gets IP address 10.10.111.240. sppp1 gets IP address 10.10.111.241, and so on.

Creating PPPoE Tunnels for DSL Support

By using PPPoE, you can provide PPP over high-speed digital services to multiple clients that are using one or more DSL modems. PPPoE implements these services by creating an Ethernet tunnel through three participants: the enterprise, the telephone company, and the service provider.

This section contains detailed information about PPPoE commands and files, which are summarized in the next table.

Table 36-8 PPPoE Commands and Configuration Files

File or Command

Description

For Instructions

/etc/ppp/pppoe

File that contains characteristics that are applied by default to all tunnels that were set up by PPPoE on the system

"/etc/ppp/pppoe File"

/etc/ppp/pppoe.device

File that contains characteristics of a particular interface that is used by PPPoE for a tunnel

"/etc/ppp/pppoe.deviceFile"

/etc/ppp/pppoe.if

File that lists the Ethernet interface over which the tunnel that is set up by PPPoE runs

"/etc/ppp/pppoe.if File"

/usr/sbin/sppptun

Command for configuring the Ethernet interfaces that are involved in a PPPoE tunnel

"/usr/sbin/sppptun Command"

/usr/lib/inet/pppoed

Command and options for using PPPoE to set up a tunnel

"/usr/lib/inet/pppoed Daemon"

Files for Configuring Interfaces for PPPoE

The interfaces that are used at either end of the PPPoE tunnel must be configured before the tunnel can support PPP communications. Use /usr/sbin/sppptun and /etc/ppp/pppoe.if files for this purpose. You must use these tools to configure Ethernet interfaces on all Solaris PPPoE clients and access servers.

/etc/ppp/pppoe.if File

The /etc/ppp/pppoe.if file lists the names of all Ethernet interfaces on a host to be used for the PPPoE tunnels. This file is processed during system boot, when the interfaces that are listed are plumbed for use in PPPoE tunnels.

You need to explicitly create /etc/ppp/pppoe.if. Type the name of one interface to be configured for PPPoE on each line.

Sample /etc/ppp/pppoe.if File

The following example shows an /etc/ppp/pppoe.if file for a server that offers three interfaces for PPPoE tunnels.
# cat /etc/ppp/pppoe.if
hme1
hme2
hme3

PPPoE clients usually have only one interface that is listed in /etc/ppp/pppoe.if.

/usr/sbin/sppptun Command

You can use the /usr/sbin/sppptun command to manually plumb and unplumb the Ethernet interfaces to be used for PPPoE tunnels. By contrast, /etc/ppp/pppoe.if is only read when the system boots up. These interfaces should correspond to the interfaces that are listed in /etc/ppp/pppoe.if.

sppptun plumbs the Ethernet interfaces that are used in PPPoE tunnels in a manner similar to the ifconfig command. Unlike ifconfig, you must plumb interfaces twice to support PPPoE because two Ethernet protocol numbers are involved.

The basic syntax for sppptun is as follows:
# /usr/sbin/sppptun plumb pppoed device-name
     device-name:pppoed
# /usr/sbin/sppptun plumb pppoe device-name
     device-name:pppoe
In this syntax, device-name is the name of the device to be plumbed for PPPoE.

The first time you issue the sppptun command, the discovery protocol pppoed is plumbed on the interface. The second time you run sppptun, the session protocol pppoe is plumbed. sppptun prints the name of the interface that was just plumbed. You use this name to unplumb the interface, when necessary.

For more information, refer to thesppptun(1M) man page.

Sample sppptun Commands for Administering Interfaces

  • The following sample shows how to manually plumb an interface for PPPoE by using /usr/sbin/sppptun.


    Example 36-1 To plumb an Interface to Support PPPoE

    # /usr/sbin/sppptun plumb pppoed hme0
    hme0:pppoed
     # /dev/sppptun plumb pppoe hme0
     hme0:pppoe

  • This sample shows how to list the interfaces on an access server that was plumbed for PPPoE.


    Example 36-2 To List All Interfaces on a PPPoE Access Server

    /usr/sbin/sppptun query
    hme0:pppoe
    hme0:pppoed
    hme1:pppoe
    hme1:pppoed
    hme2:pppoe
    hme2:pppoed

  • This sample shows how to unplumb an interface.


    Example 36-3 To Unplumb an Interface With a PPPoE Tunnel

    # sppptun unplumb hme0:pppoed
    # sppptun unplumb hme0:pppoe

PPPoE Access Server Commands and Files

A service provider that offers DSL services or support to customers can use an access server that is running Solaris PPPoE. The PPPoE access server and client do function in the traditional client-server relationship. This relationship is similar to that of the dial-out machine and dial-in server on a dial-up link, in that one system initiates communications and one system answers. By contrast, the PPP protocol has no notion of the client-server relationship and considers both machines equal peers.

The commands and files that set up a PPPoE access server include the following:

/usr/lib/inet/pppoed Daemon

The pppoed daemon accepts broadcasts for services from prospective PPPoE clients. Additionally, pppoed negotiates the server side of the PPPoE tunnel and runs pppd, the PPP daemon, over that tunnel.

You configure pppoed services in the /etc/ppp/pppoe and /etc/ppp/pppoe.device files. If /etc/ppp/pppoe exists when the system boots, pppoed runs automatically. You can also explicitly run the pppoed daemon on the command line by typing /usr/lib/inet/pppoed.

/etc/ppp/pppoe File

The /etc/ppp/pppoe file describes the services that are offered by an access server plus options that define how PPP runs over the PPPoE tunnel. You can define services for individual interfaces, or globally, that is, for all interfaces on the access server. The access server sends the information in the /etc/ppp/pppoe file in response to a broadcast from a potential PPPoE client.

The following is the basic syntax of /etc/ppp/pppoe:
global-options
service service-name
    service-specific-options
    device interface-name
  
The parameters have the following meanings:

global-options

Sets the default options for the /etc/ppp/pppoe file. These options can be any options available through pppoed or pppd. For complete lists of options, see the man pages pppoed(1M) and pppd(1M).

For example, you must list the Ethernet interfaces available for the PPPoE tunnel as part of global options. If you do not define devices in /etc/ppp/pppoe, the services are not offered on any interface.

To define devices as a global option, use the following form:
device interface <,interface>
interface specifies the interface where the service listens for potential PPPoE clients. If more than one interface is associated with the service, separate each name with a comma.

service service-name

Starts the definition of the service service-name. service-name is a string that can be any phrase appropriate to the services that are provided.

service-specific-options

Lists the PPPoE and PPP options specific to this service.

device interface-name

Specifies the interface where the previously listed service is available.

For additional options to /etc/ppp/pppoe, refer to the pppoed(1M) and pppd(1M) man pages.

A typical /etc/ppp/pppoe file might resemble the following.


Example 36-4 Basic /etc/ppp/pppoe File

device hme1,hme2,hme3
service internet
   pppd "name internet-server"
service intranet
   pppd "192.168.1.1:"
service debug
   device hme1
   pppd "debug name internet-server"

 
 
 
  Previous   Contents   Next