JavaScript is required to for searching.
跳过导航链接
退出打印视图
在 Oracle Solaris 11.1 中使用 UUCP 和 PPP 管理串行网络     Oracle Solaris 11.1 Information Library (简体中文)
为本文档评分
search filter icon
search icon

文档信息

前言

1.  Solaris PPP 4.0(概述)

2.  规划 PPP 链路(任务)

3.  设置拨号 PPP 链路(任务)

4.  设置租用线路 PPP 链路(任务)

5.  设置 PPP 验证(任务)

6.  设置 PPPoE 隧道(任务)

7.  修复常见的 PPP 问题(任务)

8.  Solaris PPP 4.0(参考信息)

在文件中和命令行上使用 PPP 选项

定义 PPP 选项的位置

如何处理 PPP 选项

PPP 配置文件特权工作原理

用户特权

文件特权

选项特权的影响

/etc/ppp/options 配置文件

/etc/ppp/options.tmpl 模板

/etc/ppp/options 文件示例的位置

/etc/ppp/options.ttyname 配置文件

在拨入服务器上使用 etc/ppp/options. ttyname

在拨入服务器上使用 etc/ppp/options. ttyname

options.ttya.tmpl 模板文件

/etc/ppp/options.ttyname 文件示例的位置

配置特定于用户的选项

在拨入服务器上配置 $HOME/.ppprc

在拨出计算机上配置 $HOME/.ppprc

指定用于与拨入服务器通信的信息

/etc/ppp/peers/peer-name 文件

/etc/ppp/peers/myisp.tmpl 模板文件

/etc/ppp/peers/peer-name 文件示例的位置

配置拨号链路的调制解调器速度

定义拨号链路上的会话

聊天脚本的内容

聊天脚本示例

基本调制解调器聊天脚本

/etc/ppp/myisp-chat.tmpl 聊天脚本模板

用于呼叫 ISP 的调制解调器聊天脚本

用于 UNIX 样式登录的增强型基本聊天脚本

外部 ISDN TA 的聊天脚本

更多聊天脚本示例

调用聊天脚本

如何调用聊天脚本(任务)

创建可执行的聊天文件

如何创建可执行聊天程序

验证链路上的呼叫者

口令验证协议 (Password Authentication Protocol, PAP)

/etc/ppp/pap-secrets 文件

创建 PAP 口令

PAP 验证期间发生的操作

使用带有 login 选项的 /etc/ppp/pap-secrets

质询握手身份验证协议 (Challenge-Handshake Authentication Protocol, CHAP)

/etc/ppp/chap-secrets 文件

CHAP 验证期间发生的操作

为呼叫者创建 IP 寻址方案

为呼叫者指定动态 IP 地址

为呼叫者指定静态 IP 地址

通过 sppp 单元编号指定 IP 地址

创建用于支持 DSL 的 PPPoE 隧道

用于配置 PPPoE 的接口的文件

/etc/ppp/pppoe.if 文件

/usr/sbin/sppptun 命令

用于管理接口的 sppptun 命令的示例

PPPoE 访问服务器命令和文件

/usr/lib/inet/pppoed 守护进程

/etc/ppp/pppoe 文件

/etc/ppp/pppoe.device 文件

pppoe.so 插件

使用 PPPoE 和 PPP 文件配置访问服务器

PPPoE 客户机命令和文件

/usr/lib/inet/pppoec 实用程序

pppoe.so 共享目标文件

用于定义访问服务器对等点的 /etc/ppp/peers/peer-name 文件

9.  从异步 Solaris PPP 迁移至 Solaris PPP 4.0(任务)

10.  UUCP(概述)

11.  管理 UUCP(任务)

12.  UUCP(参考信息)

索引

请告诉我们如何提高我们的文档:
过于简略
不易阅读或难以理解
重要信息缺失
错误的内容
需要翻译的版本
其他
Your rating has been updated
感谢您的反馈!

您的反馈将非常有助于我们提供更好的文档。 您是否愿意参与我们的内容改进并提供进一步的意见?

创建用于支持 DSL 的 PPPoE 隧道

使用 PPPoE,可以为使用一个或多个 DSL 调制解调器的多台客户机提供基于高速数字服务的 PPP。PPPoE 通过在以下三个参与者之间创建以太网隧道来实现这些服务:企业、电话公司和服务提供商。

本节包含有关 PPPoE 命令和文件的详细信息,下一个表中对这些信息进行了汇总。

表 8-2 PPPoE 命令和配置文件

文件或命令
说明
参考
/etc/ppp/pppoe
包含缺省情况下应用于所有隧道的特征的文件,这些隧道由系统中的 PPPoE 设置
/etc/ppp/pppoe.device
包含特定接口的特征的文件,PPPoE 将该接口用于某个隧道
/etc/ppp/pppoe.if
列出以太网接口的文件,PPPoE 设置的隧道在这些接口上运行
/usr/sbin/sppptun
用于配置 PPPoE 隧道中涉及的以太网接口的命令
/usr/lib/inet/pppoed
使用 PPPoE 设置隧道的命令和选项

用于配置 PPPoE 的接口的文件

只有首先对 PPPoE 隧道任何一端使用的接口进行配置,该隧道才能支持 PPP 通信。可使用 /usr/sbin/sppptun/etc/ppp/pppoe.if 文件进行此操作。必须使用这些工具在所有 Oracle Solaris PPPoE 客户机和 PPPoE 访问服务器上配置以太网接口。

/etc/ppp/pppoe.if 文件

/etc/ppp/pppoe.if 文件列出了主机上要用于 PPPoE 隧道的所有以太网接口的名称。系统引导期间,当检测要用于 PPPoE 隧道的所列出接口时,将会对此文件进行处理。

您需要显式创建 /etc/ppp/pppoe.if。在每一行上键入要为 PPPoE 配置的某个接口的名称。

以下示例展示了为 PPPoE 隧道提供三个接口的服务器的 /etc/ppp/pppoe.if 文件。

# cat /etc/ppp/pppoe.if
hme1
hme2
hme3

PPPoE 客户机通常仅有一个在 /etc/ppp/pppoe.if 中列出的接口。

/usr/sbin/sppptun 命令

可以使用 /usr/sbin/sppptun 命令手动检测和取消检测要用于 PPPoE 隧道的以太网接口。与此相反,系统引导期间 /etc/ppp/pppoe.if 仅被读取。这些接口应与 /etc/ppp/pppoe.if 中列出的接口相对应。

sppptun 以与 ipadm 命令类似的方式检测 PPPoE 隧道中使用的以太网接口。与 ipadm 不同,因为涉及两个以太网协议编号,所以必须检测接口两次才能支持 PPPoE。

sppptun 的基本语法如下所示:

# /usr/sbin/sppptun plumb pppoed device-name
     device-name:pppoed
# /usr/sbin/sppptun plumb pppoe device-name
     device-name:pppoe

在此语法中,device-name 是要为 PPPoE 检测的设备的名称。

首次发出 sppptun 命令时,将会在接口上检测搜索协议 pppoed。第二次运行 sppptun 时,将会检测会话协议 pppoesppptun 可输出已检测的接口的名称。如果需要,可以使用此名称取消检测接口。

有关更多信息,请参阅 sppptun(1M) 手册页。

用于管理接口的 sppptun 命令的示例

以下示例展示了如何使用 /usr/sbin/sppptun 手动检测用于 PPPoE 的接口。

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

以下示例展示了如何列出访问服务器上为 PPPoE 检测的接口。

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

以下示例展示了如何取消检测接口。

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

PPPoE 访问服务器命令和文件

为客户提供 DSL 服务或支持的服务提供商可以使用正在运行 PPPoE 的访问服务器。PPPoE 访问服务器和客户机采用传统客户机/服务器关系进行工作。此关系与拨号链路上拨出计算机和拨入服务器的关系类似。一个 PPPoE 系统启动通信,一个 PPPoE 系统应答。与此相反,PPP 协议没有客户机/服务器关系的概念。PPP 将两个系统视为相等的对等点。

可用于设置 PPPoE 访问服务器的命令和文件包括:

/usr/lib/inet/pppoed 守护进程

pppoed 守护进程接受来自预期的 PPPoE 客户机的服务广播。此外,pppoed 将协商 PPPoE 隧道的服务器端,然后基于该隧道运行 pppd(PPP 守护进程)。

可以在 /etc/ppp/pppoe/etc/ppp/pppoe.device 文件中配置 pppoed 服务。引导系统时,如果 /etc/ppp/pppoe 存在,将自动运行 pppoed。也可以通过键入 /usr/lib/inet/pppoed,在命令行上显式运行 pppoed 守护进程。

/etc/ppp/pppoe 文件

/etc/ppp/pppoe 文件说明访问服务器提供的服务,以及定义 PPP 如何通过 PPPoE 隧道运行的选项。可以为单个接口定义服务,也可以全局定义服务(即为访问服务器上的所有接口定义服务)。访问服务器发送 /etc/ppp/pppoe 文件中的信息以响应来自可能的 PPPoE 客户机的广播。

以下是 /etc/ppp/pppoe 的基本语法:

global-options
service service-name
    service-specific-options
    device interface-name
  

这些参数具有以下含义:

global-options

设置 /etc/ppp/pppoe 文件的缺省选项。这些选项可以是通过 pppoedpppd 使用的任何选项。有关这些选项的完整列表,请参见手册页 pppoed(1M)pppd(1M)

例如,必须在 global options 中列出 PPPoE 隧道可以使用的以太网接口。如果未在 /etc/ppp/pppoe 中定义设备,则不会在任何接口上提供服务。

要将 devices 定义为全局选项,请使用以下格式:

device interface <,interface>

interface 指定服务将侦听可能的 PPPoE 客户机的接口。如果多个接口与服务关联,请使用逗号分隔每个名称。

service service-name

启动对服务 service-name 的定义。service-name 是一个字符串,它可以是适用于所提供服务的任何短语。

service-specific-options

列出特定于此服务的 PPPoE 和 PPP 选项。

device interface-name

指定以使用前面列出的服务的接口。

有关 /etc/ppp/pppoe 的其他选项,请参阅 pppoed(1M)pppd(1M) 手册页。

典型的 /etc/ppp/pppoe 文件可能类似如下内容:

示例 8-2 基本 /etc/ppp/pppoe 文件

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"

在此文件中,以下值适用:

hme1,hme2,hme3

访问服务器上将要用于 PPPoE 隧道的三个接口。

service internet

向预期的客户机通告名为 internet 的服务。提供该服务的提供商还会决定 internet 的定义方式。例如,提供商可以将 internet 解释为表示各种 IP 服务以及对 Internet 的访问。

pppd

设置呼叫者调用 pppd 时将使用的命令行选项。选项 "name internet-server" 将本地计算机(访问服务器)的名称指定为 internet-server

service intranet

向预期的客户机通知名为 intranet 的另一个服务。

pppd "192.168.1.1:"

设置呼叫者调用 pppd 时将使用的命令行选项。呼叫者调用 pppd 时,将 192.168.1.1 设置为本地计算机(访问服务器)的 IP 地址。

service debug

在为 PPPoE 定义的接口上通告第三种服务(调试)。

device hme1

将对 PPPoE 隧道的调试限制为 hme1

pppd "debug name internet-server"

设置呼叫者调用 pppd 时将使用的命令行选项。在本例中,是对 internet-server (本地计算机)进行的 PPP 调试。

/etc/ppp/pppoe.device 文件

/etc/ppp/pppoe. device 文件描述了在 PPPoE 访问服务器的一个接口上提供的服务。/etc/ppp/pppoe. device 还包括定义 PPP 在 PPPoE 隧道上运行的方式的选项。/etc/ppp/pppoe. device 是一个可选文件,其运行方式与全局 /etc/ppp/pppoe 的运行方式完全相同。但是,如果为接口定义了 /etc/ppp/pppoe.device,则该接口的参数优先于 /etc/ppp/pppoe 中定义的全局参数。

以下是 /etc/ppp/pppoe.device 的基本语法:

service service-name
     service-specific-options
service another-service-name
      service-specific-options    

此语法与 /etc/ppp/pppoe 的语法的唯一差别是,不能使用/etc/ppp/pppoe 文件 中所示的 device 选项。

pppoe.so 插件

pppoe.so 是必须由 PPPoE 访问服务器和客户机调用的 PPPoE 共享目标文件。此文件将 MTU 和 MRU 限制为 1492,过滤驱动程序中的包,并与 pppoed 一起协商 PPPoE 隧道。在访问服务器端,pppoe.sopppd 守护进程自动调用。

使用 PPPoE 和 PPP 文件配置访问服务器

本节包含用于配置访问服务器的所有文件样例。访问服务器为多宿主服务器。该服务器连接到三个子网:greenorangepurplepppoed 在服务器上以 root 身份运行,这是缺省设置。

PPPoE 客户机可以通过接口 hme0hme1 访问 orangepurple 网络。客户机使用标准 UNIX 登录来登录到服务器。服务器使用 PAP 验证客户机。

green 网络没有通告给客户机。客户机可以访问 green 的唯一方法是直接指定 "green-net" 并提供 CHAP 验证凭证。此外,仅允许客户机 joemary 使用静态 IP 地址访问 green 网络。

示例 8-3 访问服务器的 /etc/ppp/pppoe 文件

service orange-net
     device hme0,hme1
     pppd "require-pap login name orange-server orange-server:"
service purple-net
     device hme0,hme1 
     pppd "require-pap login name purple-server purple-server:"
service green-net
     device hme1 
     pppd "require-chap name green-server green-server:"
     nowildcard

此样例说明访问服务器提供的服务。第一个服务部分说明 orange 网络的服务。

service orange-net
     device hme0,hme1
     pppd "require-pap login name orange-server orange-server:"

客户机通过接口 hme0hme1 访问 orange 网络。指定给 pppd 命令的选项将强制服务器要求潜在的客户机提供 PAP 凭证。pppd 选项还将服务器的名称设置为 orange-server,与 pap-secrets 文件中所使用的相同。

purple 网络的服务部分与 orange 网络的服务部分相同,唯一不同的是网络和服务器名称。

接下来的部分说明了 green 网络的服务:

service green-net
     device hme1 
     pppd "require-chap name green-server green-server:"
     nowildcard

此部分限制客户机访问接口 hme1。指定给 pppd 命令的选项将强制服务器要求预期的客户机提供 CHAP 凭证。pppd 选项还将服务器名称设置为 green-server,此名称将在 chap-secrets 文件中使用。nowildcard 选项指定不向客户机通告 green 网络的存在。

对于上面讨论的访问服务器方案,可以设置以下 /etc/ppp/options 文件。

示例 8-4 访问服务器的 /etc/ppp/options 文件

     auth
     proxyarp
     nodefaultroute
     name no-service    # don't authenticate otherwise

选项 name no-service 会忽略通常在 PAP 和 CHAP 验证期间搜索的服务器名称。服务器的缺省名称是由 /usr/bin/hostname 命令搜索到的名称。上一示例中的 name 选项将服务器的名称更改为 no-service。名称 no-service 可能不会出现在 papchap-secrets 文件中。此操作禁止随机用户运行 pppd 以及忽略在 /etc/ppp/options 中设置的 authname 选项。这样,由于找不到服务器名称为 no-service 的客户机的密钥,pppd 将失败。

访问服务器方案使用以下 /etc/hosts 文件。

示例 8-5 访问服务器的 /etc/hosts 文件

     172.16.0.1    orange-server
     172.17.0.1    purple-server
     172.18.0.1    green-server
     172.18.0.2    joes-pc
     172.18.0.3    marys-pc

以下是用于对尝试访问 orangepurple 网络的客户机进行 PAP 验证的 /etc/ppp/pap-secrets 文件。

示例 8-6 访问服务器的 /etc/ppp/pap-secrets 文件

* orange-server "" 172.16.0.2/16+
* purple-server "" 172.17.0.2/16+

以下是用于 CHAP 验证的 /etc/ppp/chap-secrets 文件。请注意,该文件中只列出了 joemary 客户机。

示例 8-7 访问服务器的 /etc/ppp/chap-secrets 文件

 joe green-server "joe's secret" joes-pc
mary green-server "mary's secret" marys-pc

PPPoE 客户机命令和文件

要通过 DSL 调制解调器运行 PPP,计算机必须成为 PPPoE 客户机。必须检测用于运行 PPPoE 的接口,然后使用 pppoec 实用程序“发现”是否存在访问服务器。此后,客户机可以创建通过 DSL 调制解调器的 PPPoE 隧道,并运行 PPP。

PPPoE 客户机与传统客户机/服务器模型中的访问服务器相关。PPPoE 隧道不是拨号链路,但配置和操作该隧道的方式几乎相同。

可用于设置 PPPoE 客户机的命令和文件包括:

/usr/lib/inet/pppoec 实用程序

/usr/lib/inet/pppoec 实用程序负责协商 PPPoE 隧道的客户机端。pppoecchat 实用程序类似。不直接调用 pppoec,而是将 /usr/lib/inet/pppoec 作为 pppdconnect 选项的参数启动。

pppoe.so 共享目标文件

pppoe.so 是 PPPoE 共享目标文件,它必须通过 PPPoE 装入,从而为访问服务器和客户机提供 PPPoE 功能。pppoe.so 共享目标文件将 MTU 和 MRU 限制为 1492,过滤驱动程序中的包,以及处理运行时 PPPoE 消息。

在客户机端,pppd 将在用户指定 plugin pppoe.so 选项时装入 pppoe.so

用于定义访问服务器对等点的 /etc/ppp/peers/peer-name 文件

定义要由 pppoec 发现的访问服务器时,可以使用应用于 pppoecpppd 守护进程的选项。访问服务器的 /etc/ppp/peers/peer-name 文件需要以下参数:

/etc/ppp/peers/peer-name 文件中的其余参数应该应用于服务器上的 PPP 链路。使用将用于拨出计算机上的 /etc/ppp/peers/peer-name 的相同选项。尝试将 PPP 链路需要的选项数量限制为最小。

如何定义 PPPoE 访问服务器对等点中介绍了以下示例。

示例 8-8 用于定义远程访问服务器的 /etc/ppp/peers/peer-name

# cat /etc/ppp/peers/dslserve
sppptun
plugin pppoe.so
connect "/usr/lib/inet/pppoec hme0"
noccp
noauth
user Red
password redsecret
noipdefault
defaultroute

此文件定义在设置 PPPoE 隧道和指向访问服务器 dslserve 的 PPP 链路时要使用的参数。包括的选项如下所示。

选项
说明
sppptun
sppptun 定义为串行设备的名称。
plugin pppoe.so
指示 pppd 装入 pppoe.so 共享目标文件。
connect "/usr/lib/inet/pppoec hme0"
运行 pppoec 并将 hme0 指定为 PPPoE 隧道和 PPP 链路的接口。
noccp
关闭链路上的 CCP 压缩。

注 - 许多 ISP 仅使用专有压缩算法。关闭公开提供的 CCP 算法可节省协商时间,并避免极其少见的互操作性问题。


noauth
禁止 pppd 要求访问服务器提供验证凭证。大多数 ISP 不向用户提供验证凭证。
user Red
将名称 Red 设置为客户机的用户名,访问服务器要求提供该名称以进行 PAP 验证。
password redsecret
redsecret 定义为要提供给访问服务器以进行 PAP 验证的口令。
noipdefault
将 0.0.0.0 指定为初始 IP 地址。
defaultroute
指示 pppd 在 IPCP 协商之后安装缺省 IPv4 路由。如果链路是指向 Internet 的系统链路,则应在 /etc/ppp/peers/peer-name 中包括 defaultroute;这也适用于 PPPoE 客户机。