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
感谢您的反馈!

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

定义拨号链路上的会话

拨出计算机及其远程对等点通过协商和交换各种指令在 PPP 链路中通信。配置拨出计算机时,需要确定本地和远程调制解调器所需的指令。然后,创建一个名为聊天脚本的文件,其中包含这些指令。本节将讨论有关配置调制解调器和创建聊天脚本的信息。

聊天脚本的内容

拨出计算机需要连接到的每个远程对等点可能要求使用其自身的聊天脚本。


注 - 聊天脚本通常仅在拨号链路上使用。租用线路链路不使用聊天脚本,除非链路中包含了需要启动配置的异步接口。


聊天脚本的内容由调制解调器型号或 ISDN TA 以及远程对等点的要求确定。这些内容显示为一组 Expect-send(期待发送)字符串。拨出计算机及其远程对等点会在其通信启动过程中交换这些字符串。

expect 字符串包含拨出主机期望从远程对等点接收以启动会话的字符。send 字符串包含拨出计算机在接收了 expect 字符串之后发送到远程对等点的字符。

聊天脚本中的信息通常包括以下内容:

聊天脚本示例

本节包含一些聊天脚本,可供在创建聊天脚本时用于参考。调制解调器制造商的指南和来自 ISP 及其他目标主机的信息包含调制解调器和目标对等点的聊天要求。此外,许多 PPP Web 站点都有聊天脚本样例。

基本调制解调器聊天脚本

以下是一个基本聊天脚本,创建自己的聊天脚本时可以此为模板。

ABORT   BUSY
ABORT   'NO CARRIER'
REPORT  CONNECT
TIMEOUT 10
"" AT&F1M0&M5S2=255
SAY     "Calling myserver\n"
TIMEOUT 60
OK      "ATDT1-123-555-1212"
ogin: pppuser
ssword: \q\U
% pppd

下一个表描述了聊天脚本的内容。

脚本内容
说明
ABORT BUSY
如果调制解调器从对应对等点收到此消息,则中止传输。
ABORT 'NO CARRIER'
如果调制解调器在拨号时报告 ABORT 'NO CARRIER',则中止传输。出现此消息通常是因为拨号或调制解调器协商故障。
REPORT CONNECT
从调制解调器收集 CONNECT 字符串。输出字符串。
TIMEOUT 10
将初始超时设置为 10 秒。调制解调器会立即做出响应。
"" AT&F1M0&M5S2=255
M0-连接过程中关闭扬声器。

&M5-使调制解调器要求进行错误控制。

S2=255-禁用 TIES "+++" 中断序列。

SAY "Calling myserver\n"
在本地计算机上显示消息 Calling myserver
TIMEOUT 60
将超时重置为 60 秒,为链路协商留出更多时间。
OK "ATDT1-123-555-1212"
使用电话号码 123-555-1212 呼叫远程对等点。
ogin: pppuser
使用 UNIX 样式的登录来登录到对等点。提供用户名 pppuser
ssword: \q\U
\q-如果使用 -v 选项调试,则不进行日志记录。

\U-在此位置插入命令行上指定的 -U 之后的字符串内容。通常,该字符串包含口令。

% pppd
等待 % shell 提示,并运行 pppd 命令。

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

此发行版包括 /etc/ppp/myisp-chat.tmpl 模板,可以修改该模板供您的站点使用。/etc/ppp/myisp-chat.tmpl 与基本调制解调器聊天脚本类似,不同的是该模板不包括登录序列。

ABORT   BUSY
ABORT   'NO CARRIER'
REPORT  CONNECT
TIMEOUT 10
""      "AT&F1"
OK      "AT&C1&D2"
SAY     "Calling myisp\n"
TIMEOUT 60
OK      "ATDT1-123-555-1212"
CONNECT \c
脚本内容
说明
ABORT BUSY
如果调制解调器从对应对等点收到此消息,则中止传输。
ABORT 'NO CARRIER
如果调制解调器在拨号时报告 ABORT 'NO CARRIER',则中止传输。出现此消息通常是因为拨号或调制解调器协商故障。
REPORT CONNECT
从调制解调器收集 CONNECT 字符串。输出字符串。
TIMEOUT 10
将初始超时设置为 10 秒。调制解调器会立即做出响应。
"" "AT&F1"
将调制解调器重置为出厂缺省值。
OK "AT&C1&D2"
重置调制解调器,以便对于 &C1,来自调制解调器的 DCD 位于载波之后。如果远程端由于某种原因而挂起,DCD 将被丢弃。

对于 &D2,DTR 高到低转换会导致调制解调器“挂起”。

SAY "Calling myisp\n"
在本地计算机上显示消息 "Calling myisp"。
TIMEOUT 60
将超时重置为 60 秒,为链路协商留出更多时间。
OK "ATDT1-123-555-1212"
使用电话号码 123-555-1212 呼叫远程对等点。
CONNECT \c
等待来自对应对等点的调制解调器的 CONNECT 消息。

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

使用以下聊天脚本作为模板,用于从带有 U.S. Robotics Courier 调制解调器的拨出计算机呼叫 ISP。

ABORT   BUSY
ABORT   'NO CARRIER'
REPORT  CONNECT
TIMEOUT 10
"" AT&F1M0&M5S2=255
SAY     "Calling myisp\n"
TIMEOUT 60
OK      "ATDT1-123-555-1212"
CONNECT \c
\r \d\c
SAY "Connected; running PPP\n"

下表描述了聊天脚本的内容。

脚本内容
说明
ABORT BUSY
如果调制解调器从对应对等点收到此消息,则中止传输。
ABORT 'NO CARRIER'
如果调制解调器从对应对等点收到此消息,则中止传输。
REPORT CONNECT
从调制解调器收集 CONNECT 字符串。输出字符串。
TIMEOUT 10
将初始超时设置为 10 秒。调制解调器会立即做出响应。
"" AT&F1M0M0M0M0&M5S2=255
M0-连接过程中关闭扬声器。

&M5-使调制解调器要求进行错误控制。

S2=255-禁用 TIES "+++" 中断序列。

SAY "Calling myisp\n"
在本地计算机上显示消息 Calling myisp
TIMEOUT 60
将超时重置为 60 秒,为链路协商留出更多时间。
OK "ATDT1-123-555-1212"
使用电话号码 123-555-1212 呼叫远程对等点。
CONNECT \c
等待来自对应对等点的调制解调器的 CONNECT 消息。
\r \d\c
一直等到 CONNECT 消息结束。
SAY “Connected; running PPP\n”
在本地计算机上显示提示性消息 Connected; running PPP

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

以下聊天脚本是为呼叫远程 Oracle Solaris 对等点或其他 UNIX 类型的对等点而进行了增强的基本脚本。此聊天脚本在如何创建用于呼叫对等点的指令中使用。

        SAY "Calling the peer\n"
        TIMEOUT 10
        ABORT BUSY
        ABORT 'NO CARRIER'
        ABORT ERROR
        REPORT CONNECT
        "" AT&F1&M5S2=255
        TIMEOUT 60
        OK ATDT1-123-555-1234
        CONNECT \c
        SAY "Connected; logging in.\n"
        TIMEOUT 5
        ogin:--ogin: pppuser
        TIMEOUT 20
        ABORT 'ogin incorrect'
        ssword: \qmypassword
        "% " \c
        SAY "Logged in.  Starting PPP on peer system.\n" 
        ABORT 'not found'
        "" "exec pppd"
        ~ \c

下表说明了该聊天脚本的参数。

脚本内容
说明
TIMEOUT 10
将初始超时设置为 10 秒。调制解调器会立即做出响应。
ABORT BUSY
如果调制解调器从对应对等点收到此消息,则中止传输。
ABORT 'NO CARRIER'
如果调制解调器从对应对等点收到此消息,则中止传输。
ABORT ERROR
如果调制解调器从对应对等点收到此消息,则中止传输。
REPORT CONNECT
从调制解调器收集 CONNECT 字符串。输出字符串。
"" AT&F1&M5S2=255
&M5-使调制解调器要求进行错误控制。

S2=255-禁用 TIES "+++" 中断序列。

TIMEOUT 60
将超时重置为 60 秒,为链路协商留出更多时间。
OK ATDT1-123-555-1234
使用电话号码 123-555-1212 呼叫远程对等点。
CONNECT \c
等待来自对应对等点的调制解调器的 CONNECT 消息。
SAY "Connected; logging in.\n"
显示提示性消息 Connected; logging in 以指出用户状态。
TIMEOUT 5
更改超时以便快速显示登录提示。
ogin:--ogin: pppuser
等待登录提示。如果未收到提示,则发送 RETURN 并等待。然后,将用户名 pppuser 发送到对等点。大多数 ISP 将随后的序列称为 PAP 登录。但是,PAP 登录与 PAP 验证毫不相关。
TIMEOUT 20
将超时更改为 20 秒,以便进行慢速口令验证。
ssword: \qmysecrethere
等待来自对等点的口令提示。收到提示时,发送口令 \qmysecrethere\q 阻止将口令写入系统日志文件。
"% " \c
等待来自对等点的 shell 提示。聊天脚本使用 C shell。如果用户喜欢使用其他 shell 登录,可以更改此值。
SAY "Logged in. Starting PPP on peer system.\n"
显示提示性消息 Logged in. Starting PPP on peer system 以指出用户状态。
ABORT 'not found'
如果 shell 遇到错误,则中止传输。
"" "exec pppd"
在对等点上启动 pppd
~ \c
等待在对等点上启动 PPP。

紧接 CONNECT \c 之后启动 PPP 通常被 ISP 称为 PAP 登录,但 PAP 登录实际上不属于 PAP 验证。

短语 ogin:--ogin: pppuser 指示调制解调器发送用户名 pppuser 以响应来自拨入服务器的登录提示。pppuser 是为拨入服务器上的远程 user1 创建的特殊 PPP 用户帐户名。有关在拨入服务器上创建 PPP 用户帐户的说明,请参阅如何配置拨入服务器的用户

外部 ISDN TA 的聊天脚本

以下聊天脚本用于从使用 ZyXEL omni.net.ISDN TA 的拨出计算机进行呼叫。

        SAY "Calling the peer\n"
        TIMEOUT 10
        ABORT BUSY
        ABORT 'NO CARRIER'
        ABORT ERROR
        REPORT CONNECT
        "" AT&FB40S83.7=1&K44&J3X7S61.3=1S0=0S2=255
        OK ATDI18882638234
        CONNECT \c
        \r \d\c
        SAY "Connected; running PPP\n"

下表说明了该聊天脚本的参数。

脚本内容
说明
SAY "Calling the peer"
在拨出计算机的屏幕上显示此消息。
TIMEOUT 10
将初始超时设置为 10 秒。
ABORT BUSY
如果调制解调器从对应对等点收到此消息,则中止传输。
ABORT 'NO CARRIER'
如果调制解调器从对应对等点收到此消息,则中止传输。
ABORT ERROR
如果调制解调器从对应对等点收到此消息,则中止传输。
REPORT CONNECT
从调制解调器收集 CONNECT 字符串。输出字符串。
"" AT&FB40S83.7=1&K44&J3X7S61.3=1S0=0S2=255
此行中的字母具有以下含义:
  • &F-使用出厂缺省值

  • B40-执行异步 PPP 转换

  • S83.7=1-使用“通过语音承载传输数据”

  • &K44-启用 CCP 压缩

  • &J3-启用 MP

  • X7-报告 DCE 端速率

  • S61.3=1-使用包分段

  • S0=0-无自动应答

  • S2=255-禁用 TIES 转义

OK ATDI18882638234
进行 ISDN 呼叫。对于多链路,会对同一电话号码进行二次呼叫,通常大多数 ISP 要求这样做。如果远程对等点要求另一个不同的电话号码,可附加 "+ nnnn"。nnnn 表示第二个电话号码。
CONNECT \c
等待来自对应对等点的调制解调器的 CONNECT 消息。
\r \d\c
一直等到 CONNECT 消息结束。
SAY "Connected; running PPP\n"
在拨出计算机的屏幕上显示此消息。

有关聊天脚本的选项说明和其他详细信息,请参阅 chat(1M) 手册页。有关 expect-send(期待发送)字符串的说明,请参阅/etc/uucp/Systems 文件中的聊天脚本字段

更多聊天脚本示例

很多网站提供用于创建聊天脚本的聊天脚本样例和帮助。有关示例,请参见 http://ppp.samba.org/ppp/index.html

调用聊天脚本

可以使用 connect 选项调用聊天脚本。可以在任何 PPP 配置文件中或在命令行上使用 connect "chat ..."

聊天脚本不可执行,但 connect 调用的程序必须可执行。可以使用聊天实用程序作为 connect 要调用的程序。在这种情况下,如果通过 -f 选项将聊天脚本存储在外部文件中,则聊天脚本文件将不可执行。

chat(1m) 中介绍的 chat 程序执行实际的聊天脚本。只要 pppd 遇到 connect "chat ..." 选项,pppd 守护进程就会调用 chat 程序。


注 - 可以使用任何外部程序(如 PerlTcl)来创建高级聊天脚本。为了方便使用,提供了 chat 实用程序。


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

  1. 以 ASCII 文件形式创建聊天脚本。
  2. 使用以下语法调用任何 PPP 配置文件中的聊天脚本:
    connect 'chat  -f /etc/ppp/chatfile'

    -f 标志指示后面将跟一个文件名。/etc/ppp/chatfile 表示聊天文件的名称。

  3. 将外部聊天文件的读取权限授予运行 pppd 命令的用户。

    注意

    注意 - 聊天程序始终使用用户的特权运行,即使从特权源调用 connect 'chat ...' 选项也是如此。因此,使用 -f 选项读取的独立聊天文件必须可被调用用户读取。如果该聊天脚本包含口令或其他敏感信息,则此特权可能会引起安全问题。


示例 8-1 内置聊天脚本

可将整个聊天脚本会话放置在一行中,类似如下内容:

connect 'chat "" "AT&F1" OK ATDT5551212 CONNECT "\c"'

完整的聊天脚本接在 chat 关键字之后。脚本以 "\c"' 终止。可以在任何 PPP 配置文件或命令行上使用此格式作为 pppd 的参数。

外部文件中的聊天脚本

如果特定对等点需要的聊天脚本比较长或很复杂,可以考虑将该脚本作为一个独立文件创建。外部聊天文件易于维护和记录。可以通过在注释前加上井 (#) 号添加对聊天文件的注释。

如何创建用于呼叫对等点的指令过程展示了如何使用外部文件中包含的聊天脚本。

创建可执行的聊天文件

可以创建一个聊天文件,该脚本是一个可执行脚本,可在启动拨号链路时自动运行。因此,在链路启动过程中,除了可运行包含在传统聊天脚本中的命令之外,还可以运行其他命令(如用于奇偶校验设置的 stty)。

此可执行聊天脚本登录到旧式 UNIX 系统(要求 7 位,包含偶校验)。运行 PPP 时,系统将更改为不包含奇偶校验的 8 位。

#!/bin/sh
chat "" "AT&F1" OK "ATDT555-1212" CONNECT "\c"
stty evenp
chat ogin: pppuser ssword: "\q\U" % "exec pppd"
stty -evenp

如何创建可执行聊天程序

  1. 使用文本编辑器创建可执行聊天程序(如前面的示例)。
  2. 使聊天程序可执行。
    # chmod +x /etc/ppp/chatprogram
  3. 调用聊天程序。
    connect /etc/ppp/chatprogram

    聊天程序无需位于 /etc/ppp 文件系统中。可以将聊天程序存储在任何位置。