本节介绍串行联网主题。串行联网是指使用串行接口(如 RS-232 或 V.35 端口)连接两台或更多计算机,以便进行数据传送。与 LAN 接口(如以太网)不同,这些串行接口用于连接相距很远的系统。PPP(Point-to-Point Protocol,点对点协议)和 UUCP(UNIX-to-UNIX CoPy,UNIX 对 UNIX 复制)是可用于实现串行联网的独特技术。为联网配置串行接口之后,多个用户可以按照几乎与使用任何其他网络接口(如以太网)相同的方法使用该接口。
本章介绍 Solaris PPP 4.0。利用此版本的 PPP,可以使位于不同物理位置的两台计算机能够在多种介质上使用 PPP 来相互通信。从 Solaris 9 发行版开始,Solaris PPP 4.0 将作为基本安装的一部分。
本章将讨论以下主题:
Solaris PPP 4.0 实现点对点协议 (Point-to-Point Protocol, PPP),此协议为数据链路协议,是 TCP/IP 协议集的成员之一。PPP 说明通过通信介质(如电话线路)在两台端点计算机之间传输数据的方式。
自 20 世纪 90 年代初以来,PPP 已广泛用作通过通信链路发送数据报的 Internet 标准。PPP 标准由 Internet 工程任务组 (Internet Engineering Task Force, IETF) 的点对点工作组在 RFC 1661 中说明。当远程计算机呼叫配置用于接收传入呼叫的 Internet 服务提供商 (Internet service provider, ISP) 或公司服务器时,通常使用 PPP。
Solaris PPP 4.0 基于公开的澳大利亚国立大学 (Australian National University, ANU) PPP–2.4 并实现 PPP 标准。支持异步和同步 PPP 链路。
在整个 Internet 社区中可以获取各种版本的标准 PPP,并且正在广泛使用这些版本。ANU PPP-2.4 广泛用于 Linux、Tru64 UNIX,以及 BSD 的三种最主要变体:
FreeBSD
OpenBSD
NetBSD
Solaris PPP 4.0 为运行 Solaris 操作系统的计算机带来了 ANU PPP-2.4 的高可配置特性。在运行 Solaris PPP 4.0 的计算机上可以轻易地设置连接到任何运行标准 PPP 实现的计算机的 PPP 链路。
不基于 ANU 但却能成功地与 Solaris PPP 4.0 进行交互操作的 PPP 实现包括:
Solaris PPP,也称为 asppp,在 Solaris 2.4 到 Solaris 8 发行版中可用
SolsticeTM PPP 3.0.1
Microsoft Windows 98 DUN
Cisco IOS 12.0(同步)
从 Solaris 9 发行版开始,Solaris PPP 4.0 是受支持的 PPP 实现。Solaris 9 发行版和 Solaris 10 发行版不包括早期的异步 Solaris PPP (asppp) 软件。有关更多信息,请参阅以下内容:
位于 http://docs.sun.com 上的 Solaris 8 System Administrator Collection
如果您当前使用的是 asppp,可以考虑迁移到 Solaris PPP 4.0。请注意这两种 Solaris PPP 技术之间的以下差别:
传送模式
asppp 仅支持异步通信。Solaris PPP 4.0 支持异步通信和同步通信。
配置过程
设置 asppp 需要对 asppp.cf 配置文件、三个 UUCP 文件和 ifconfig 命令进行配置。此外,必须为可能登录到计算机的所有用户预先配置接口。
设置 Solaris PPP 4.0 需要为 PPP 配置文件定义选项,或发出带选项的 pppd 命令。您也可以将配置文件和命令行方法结合使用。Solaris PPP 可动态创建和删除接口。不需要为每个用户直接配置 PPP 接口。
asppp 中无法提供的 Solaris PPP 4.0 功能
MS-CHAPv1 和 MS-CHAPv2 验证
基于以太网的 PPP (PPP over Ethernet, PPPoE),用于支持 ADSL 网桥
PAM 验证
插件模块
IPv6 寻址
使用 Deflate 或 BSD 压缩方法进行的数据压缩
Microsoft 客户端回叫支持
如果要将现有 asppp 配置转换为 Solaris PPP 4.0,可以使用此发行版附带的转换脚本。有关完整说明,请参阅如何从 asppp 转换为 Solaris PPP 4.0。
可利用印刷材料和联机文档等多种资源获取更多有关 PPP 的信息。以下几个小节给出了一些建议。
有关广泛使用的 PPP 实现(包括 ANU PPP)的更多信息,请参阅以下书籍:
由 Carlson, James 编著的《PPP Design, Implementation, and Debugging》,第 2 版。Addison-Wesley 出版,2000。
由 Sun, Andrew 编著的《 Using and Managing PPP》。O'Reilly & Associates 出版,1999。
要获取有关 PPP 的常规信息,请访问以下 Web 站点:
有关 ANU PPP 的信息,请访问澳大利亚公立大学的 PPP 系统信息库,网址为 http://pserver.samba.org/cgi-bin/cvsweb/ppp/。
有关 Solaris 系统管理和 PPP 早期版本的技术信息、常见问题解答和讨论,请访问 Sun Microsystems 的系统管理员资源,网址为 http://www.sun.com/bigadmin/home/index.html。
有关许多不同 PPP 实现的调制解调器配置和建议,请参阅 Stokely Consulting 的 Web 项目管理与软件开发 Web 站点:http://www.stokely.com/unix.serial.port.resources/ppp.slip.html。
有关 PPP 的一些有用的 Internet RFC 包括:
1661 和 1662,说明 PPP 的主要功能
1334,说明验证协议(如口令验证协议 (Password Authentication Protocol, PAP) 和质询握手身份验证协议 (Challenge-Handshake Authentication Protocol, CHAP))
1332,说明基于以太网的 PPP (PPP over Ethernet, PPPoE) 的信息性 RFC
要获取 PPP RFC 的副本,请在 http://www.ietf.org/rfc.html 的 IETF RFC Web 页上指定 RFC 的编号。
有关 Solaris PPP 4.0 实现的技术层面的详细信息,请参阅以下手册页:
此外,还可以参见 pppdump(1M) 的手册页。可使用 man 命令找到与 PPP 有关的手册页。
本节介绍 PPP 配置,还将介绍本指南中使用的术语。
Solaris PPP 4.0 支持许多配置。
交换式访问(或称为拨号)配置
硬连线(或称为租用线路)配置
两台计算机,通常位于独立物理位置,称为对等点。对等点可以是个人计算机、工程工作站、大型服务器,甚至商业路由器,具体取决于网站的要求。
每个对等点上的串行接口。在 Solaris 计算机上,此接口可以是 cua、hihp 或其他接口,具体取决于是配置了异步还是同步 PPP。
最常用的 PPP 配置是拨号链路。在拨号链路中,本地对等点向远程对等点拨号以建立连接并运行 PPP。在拨号过程中,本地对等点呼叫远程对等点的电话号码以启动该链路。
常见拨号情况包括呼叫 ISP 的对等点(配置用于接收传入呼叫)的家庭计算机。另外一种情况是公司站点,此站点中的本地计算机基于 PPP 链路向另一建筑内的对等点传输数据。
在本指南中,启动拨号连接的本地对等点称为拨出计算机。接收传入呼叫的对等点称为拨入服务器。此计算机实际上是拨出计算机的目标对等点,它可能是一台真实服务器也可能不是。
PPP 不是客户机/服务器协议。一些 PPP 文档使用术语“客户机”和“服务器”表示电话呼叫的建立。拨入服务器与文件服务器或名称服务器类似,不是一台真实的服务器。拨入服务器成为广泛使用的 PPP 术语是因为拨入计算机通常为多台拨出计算机提供网络访问“服务”。不过,拨入服务器是拨出计算机的目标对等点。
请参见下图。
位置 1(链路的拨出端)的配置由以下元素组成:
拨出计算机,通常为个人计算机或个人家庭中的工作站。
拨出计算机上的串行接口。/dev/cua/a 或 /dev/cua/b 是运行 Solaris 软件的计算机上传出呼叫的标准串行接口。
连接到电话插口的异步调制解调器或 ISDN 终端适配器 (terminal adapter, TA)。
电话线和电话公司的服务。
位置 2(链路的拨入端)的配置由以下元素组成:
连接到电话网络的电话插口或类似连接器
异步调制解调器或 ISDN TA
连接到网络(如公司内联网,对于 ISP 则为全球 Internet)的拨入服务器
外部 ISDN TA 具有比调制解调器更快的速度,但可以按照基本相同的方法配置 TA。配置 ISDN TA 的主要差别在于聊天脚本,该脚本需要使用特定于 TA 制造商的命令。有关 ISDN TA 的聊天脚本的信息,请参阅外部 ISDN TA 的聊天脚本。
拨出和拨入对等点上的 PPP 配置文件包含用于设置链路的指令。启动拨号链路时将发生以下过程。
拨出计算机上的用户或进程运行 pppd 命令以启动链路。
拨出计算机读取其 PPP 配置文件。然后,拨出计算机基于串行线路将指令(包括拨入服务器的电话号码)发送到其调制解调器。
调制解调器拨打电话号码,以与拨入服务器上的调制解调器建立电话连接。
拨出计算机发送到调制解调器和拨入服务器的一系列文本字符串包含在称为聊天脚本的文件中。如有必要,拨出计算机可发送命令到拨入服务器以调用该服务器上的 PPP。
连接到拨入服务器的调制解调器开始与拨出计算机上的调制解调器进行链路协商。
完成调制解调器对调制解调器协商后,拨出计算机上的调制解调器将报告 “CONNECT”。
两个对等点上的 PPP 都将进入建立阶段,此阶段中链路控制协议 (Link Control Protocol, LCP) 协商基本链路参数和验证的使用。
如有必要,对等点相互验证。
PPP 的网络控制协议 (Network Control Protocol, NCP) 协商网络协议(如 IPv4 或 IPv6)的使用。
然后,拨出计算机对通过拨入服务器可访问的主机运行 telnet 或类似命令。
硬连线的租用线路 PPP 配置包括通过链路连接的两个对等点。该链路由从提供商处租用的交换式或非交换式数字服务组成。Solaris PPP 4.0 基于任何全双工、点对点租用线路介质工作。通常,公司从网络提供商租用硬连线的链路以连接到 ISP 或其他远程站点。
拨号链路和租用线路链路都包括通过通信介质连接的两个对等点。下表概述了两种链路类型之间的差别。
租用线路 |
拨号线路 |
---|---|
始终处于连接状态,除非系统管理员断开租用线路的连接或由于停电而断开连接。 |
根据需要在用户尝试呼叫远程对等点时启动。 |
使用同步和异步通信。对于异步通信,通常使用长通信距离调制解调器。 |
使用异步通信。 |
从提供商处租用。 |
使用现有电话线路。 |
需要同步设备。 |
使用低成本的调制解调器。 |
需要大多数 SPARC 系统中常见的同步端口。但是,同步端口在 x86 系统和较新的 SPARC 系统中不常见。 |
使用大多数计算机中附带的标准串行接口。 |
请参见下图。
租用线路链路包含以下部分:
两个对等点,每个对等点位于链路的一端。每个对等点可以是工作站或服务器。通常,一个对等点充当其网络或 Internet 与另外一个对等点之间的路由器。
每个对等点上的同步接口。一些运行 Solaris 软件的计算机需要购买同步接口卡(如 HSI/P)才能连接到租用线路。其他计算机(如 UltraSPARC® 工作站)具有内置同步接口。
每个对等点上的 CSU/DSU 同步数字单元,用于将同步端口连接到租用线路。
根据所在地区,CSU 可能内置在 DSU 中、由个人拥有或从提供商处租用。DSU 为 Solaris 计算机提供了标准的同步串行接口。通过帧中继,帧中继访问设备 (Frame Relay Access Device, FRAD) 可执行串行接口适配。
在大多数类型的租用线路中,对等点实际上不相互拨号。相反,公司购买租用线路服务在两个固定位置之间显式建立连接。有时,位于租用线路两端的两个对等点处于同一公司的不同物理位置。另外一种情况是公司在租用线路上设置用于连接到 ISP 的路由器。
尽管硬连线的链路更容易设置,但租用线路通常没有拨号链路使用广泛。硬连线的链路不需要聊天脚本。租用线路时,由于两个对等点可相互识别,通常不使用验证。两个对等点启动基于链路的 PPP 之后,该链路将保持活动状态。如果线路未失败,或任何一个对等点未显式终止租用线路链路,该链路将会一直保持活动状态。
租用线路上运行 Solaris PPP 4.0 的对等点使用与定义拨号链路相同的大多数配置文件。
启动基于租用线路的通信时,将发生以下过程:
验证是检验用户是否是其声明的身份的过程。UNIX 登录序列是一种简单形式的验证:
login 命令提示用户键入名称和口令。
然后,login 尝试在口令数据库中查找所键入的用户名和口令以验证该用户。
如果数据库中包含该用户名和口令,则用户将通过验证并得到访问系统的权限。如果数据库中不包含该用户名和口令,则将拒绝用户访问系统。
缺省情况下,Solaris PPP 4.0 在未指定缺省路由的计算机上不要求验证。因此,不包含缺省路由的本地计算机不会验证远程呼叫者。相反,如果计算机定义了缺省路由,则计算机会始终验证远程呼叫者。
对于设置连接到您计算机的 PPP 链路的呼叫者,可以使用 PPP 验证协议来检验其身份。相反,如果本地计算机必须呼叫会验证呼叫者的对等点,则必须配置 PPP 验证信息。
由于呼叫者必须向远程对等点证明其身份,所以 PPP 链路上的呼叫计算机被视为被验证者。对等点被视为验证者。验证者将在安全协议的相应 PPP 文件中查找呼叫者的身份,然后确定是否对呼叫者进行验证。
通常为拨号链路配置 PPP 验证。开始呼叫时,拨出计算机是被验证者。拨入服务器是验证者。服务器中包含一个机密文件形式的数据库。此文件列出了被授予可设置连接到服务器的PPP 链路权限的用户。这些用户被视为可信赖呼叫者。
一些拨出计算机要求远程对等点在响应拨出计算机的呼叫时提供验证信息。然后,它们的角色将互换:远程对等点成为被验证者,而拨出计算机成为验证者。
PPP 4.0 不阻止租用线路对等点的验证,但租用线路链路中通常不使用验证。租用线路合同的性质通常表示,线路两端的参与者可相互识别。两端的参与者通常是可信赖的。但是,由于 PPP 验证并不难于管理,所以应认真考虑实现租用线路的验证。
PPP 验证协议包括口令验证协议 (Password Authentication Protocol, PAP) 和质询握手身份验证协议 (Challenge-Handshake Authentication Protocol, CHAP)。对于允许链接到本地计算机的每个呼叫方,每一种协议都使用包含呼叫方的标识信息(或称为安全凭证)的机密数据库。有关 PAP 的详细说明,请参见口令验证协议 (Password Authentication Protocol, PAP)。有关 CHAP 说明,请参见质询握手身份验证协议 (Challenge-Handshake Authentication Protocol, CHAP)。
在 PPP 链路上提供验证是可选操作。此外,尽管验证会检验对等点是否可信赖,但 PPP 验证不提供数据的机密性。为了保密,请使用加密软件,如 IPsec、PGP、SSL、Kerberos 和 Solaris 安全 Shell。
Solaris PPP 4.0 未实现 RFC 1968 中说明的 PPP 加密控制协议 (Encryption Control Protocol, ECP)。
请考虑在下列情况下实现 PPP 验证。
您的公司接受来自基于公共交换式电话网络的用户的传入呼叫。
您的公司安全策略要求远程用户在通过公司防火墙访问网络或从事安全事务时提供验证凭证。
您需要根据标准 UNIX 口令数据库(如 /etc/passwd、NIS、NIS+、LDAP 或 PAM)对呼叫者进行验证。对于此情况使用 PAP 验证。
公司的拨入服务器还提供网络的 Internet 连接。对于此情况使用 PAP 验证。
串行线路没有位于链路任何一端的计算机或网络上的口令数据库安全。对于此情况使用 CHAP 验证。
许多网络提供商和在家工作的个人使用数字用户线路 (Digital Subscriber Line, DSL) 技术提供快速的网络访问。为了支持 DSL 用户,Solaris PPP 4.0 包括了基于以太网的 PPP (PPP over Ethernet, PPPoE) 功能。借助 PPPoE 技术,多个主机可以通过一个指向一个或多个目标的以太网链路来运行 PPP 会话。
如果您的情况符合下列之一,则应使用 PPPoE:
支持 DSL 用户(可能包括您自己)。您的 DSL 服务提供商要求用户配置 PPPoE 通道来接收基于 DSL 线路的服务。
您的站点是计划用于向用户提供 PPPoE 的 ISP。
本节介绍与 PPPoE 关联的术语和基本 PPPoE 拓扑的概述。
PPPoE 是 RedBack Networks 的专有协议。PPPoE 为搜索协议,而不是标准 PPP 的另一个版本。在 PPPoE 情况中,启动 PPP 通信的计算机必须首先查找(或称为搜索)运行 PPPoE 的对等点。PPPoE 协议使用以太网广播包来查找对等点。
在搜索过程之后,PPPoE 通过启动主机(或称为 PPPoE 客户机)设置连接到对等点(PPPoE 访问服务器)的基于以太网的通道。建立通道是在一种协议顶端运行另一种协议的做法。 使用 PPPoE,Solaris PPP 4.0 可建立基于以太网 IEEE 802.2 的 PPP 通道,这两种协议都是数据链路协议。产生的 PPP 连接就像是 PPPoE 客户机和访问服务器之间的专用连接。有关 PPPoE 的详细信息,请参见创建 PPPoE 通道以支持 DSL。
PPPoE 配置中包括三个参与者:使用者、电话公司和服务提供商,如下图所示。
作为系统管理员,您可以帮助使用者配置其 PPPoE。一种常见类型的 PPPoE 使用者是需要基于 DSL 线路运行 PPPoE 的个人。另外一种 PPPoE 使用者是购买 DSL 线路的公司,员工可以通过该线路运行 PPPoE 通道,如上图所示。
公司使用者使用 PPPoE 的主要原因是通过高速的 DSL 设备向大量的主机提供 PPP 通信。通常,单独一台 PPPoE 客户机具有一个 DSL 调制解调器。或者,集线器上的一组客户机可以共享一个 DSL 调制解调器,该调制解调器也通过以太网线路连接到集线器。
从技术上讲,DSL 设备是网桥而不是调制解调器。但是,由于常见做法将这些设备称为调制解调器,所以本指南使用术语“DSL 调制解调器”。
PPPoE 通过连接到 DSL 调制解调器的以太网线路上的通道运行 PPP。该线路连接到分路器,而分路器又连接到电话线。
电话公司是 PPPoE 方案的中间层。电话公司使用称为数字用户线路访问多路复用器 (Digital Subscriber Line Access Multiplexer, DSLAM) 的设备,对通过电话线路接收的信号进行分路。DSLAM 将信号分离到独立的线路,模拟线路用于电话服务,数字线路用于 PPPoE。通过 DSLAM,数字线路将基于 ATM 数据网络的通道扩展到 ISP。
ISP 通过基于网桥的ATM 数据网络接收 PPPoE 传输。在 ISP 位置,运行 PPPoE 的访问服务器充当 PPP 链路的对等点。访问服务器在功能上与图 15–2 中介绍的拨入服务器非常类似,但访问服务器不使用调制解调器。访问服务器将单个 PPPoE 会话转换为常规 IP 流量,如 Internet 访问。
如果您是 ISP 的系统管理员,可能负责配置和维护访问服务器。
PPPoE 通道实际上并不安全。您可以使用 PAP 或 CHAP 为基于通道运行的 PPP 链路提供用户验证。