当前位置:Linux教程 - Linux - Linux作PPP接入服务器

Linux作PPP接入服务器

一、关于本文

与通常的Linux ppp相关文档(如Linux ppp Howto等)不同的是,本章的目的是让你能够从自己实际的应用需求出发,以尽量短的时间来完成系统方案的预算,拟定并尽快实施。由于本章尽量通过雅俗共赏的语句,并采用了详尽的""实例操作日记方式""成文,因此,无论您是一个发烧的玩家,小IT部门主管或企业级ITO,通过阅读本章,都应该能让你的ppp 服务器跑起来。但请注意,如果您需关注更多的ppp相关细节。请浏览“资源”一节内提供的文章链接。

另外,因为市面上的硬件及通信环境的不同,所以文中的一些数据虽然是我在测试中的真实数据,但或许并不与您的实际相符。 鉴于当前IT通信手段的不断变迁,虽然在作者编撰本文时尽力介绍当时最流行的硬件与软件解决方案,但或许它会很快过时或已经过时了。同时,作者也不能保证本章中不留有任何错误,因此,如果你有更好的解决方案或发现了其中的任一错误,都请不吝赐教于作者本人,以使能在下一版本中更新与排错。谢谢!

二、我在什么时候需要ppp?为什么选择Linux下的ppp?

在以下的情况中你可能需要用到PPP Server!
你是小有名气的电脑发烧友,通过多年耕耘收集了数十GB的程序、驱动与资料,但你没有手提式电脑且需经常为周围的朋友分忧解难,虽然他们也许能方便地连接到INTERNET,但你更情愿拨入自家的服务器,因为你对自家的服务器数据结构了如指掌......(见图)

你是一个小小的部门信息主管(如银行客户服务部)兼任技术员,同时经费有限;但是那些分散各处的员工或流动客户总是抱YUAN你,说应该能在需要的时候拨入本部门的服务器,以使交流与共享变得更顺畅......(见图)
刚愎自用的掘土机司机挖断了证券总公司与子公司间的光缆,但行情传递与交易请求如箭离弦刻不容缓,所幸的是,那挂在半空的电话线还能使其相互联系,于是你紧急启用你的备用PPP Server......(见图)
你与电信部门有密切联系(支局长是你爸),又有融资渠道,想办个ISP赚点菜金买座房......(虽然现在单纯的ISP很难赚钱了)......(见图)
但我为什么要选择Linux下的ppp?
感谢这世上有个LINUX,它与UNIX相比倒也没有什么特别之长处。使用它仅是因为它是免费的,于是能用省下来的钱(可以省好几万RMB/每份UNIX授权费用)用来购置好一点的服务器,这真是我等福音。同时实践也证明,用LINUX在有自身技术支持下,尽可放心一用。 有这等好事,你又何乐而不为呢?

三、什么是PPP?

PPP(点对点协议)是在直接连接的串行链路上(例如空调制解调器电缆)上创建和运行IP(网际网协议)和其他网络协议的一个方案。一个直接连接的串行链路,包括通过telnet建立的链路或者是一个用调制解调器和电话线路(当然也包括诸如ISDN之类的数字线路)链路。 (以上取自宫敏博士的译文)

通过实例操作与实践应用,我们可以这样来理解PPP: ppp是一种协议,它是基于流的计算机联网工具,它确定一端到另一端之间(能且只能控制两端)数据的传送与控制的规则。它提供在串行线上传送和接收IP数据包的功能,由此可使TCP/IP网络应用程序(如rlogin和telnet)在串行线上的使用。一般来说,PPP常用于将家中或小型办公室的PC连到另一工作地点的计算机或连到提供Internet服务的(ISP)计算机以便进行文件传输,远程注册,访问WWW及其它的TCP/IP或Internet功能。

使用PPP的原因是因为本地主机和远程主机之间无法实现以太连接或令牌环连接,但可以采用串行线连接。这两端之间可以用调制解调器(专线或拔号方式)或直接线性相连。这样的连接方式决定了他的优点与劣根,优点是原理简单,连接方便且能满足部分应用需求,但是先天不足之处,正是它的非广播性与蜗牛般(相对而言)的速度。同时,PPP仅支持异步通信。

当然,除了PPP以外,SLIP也可用于串行线通信。在此并不想讨论PPP与SLIP之间的差别。

本章的一些术语:

连线(line):指串行线,即数据传输所经过的物理介质。
链接(link):指PPP链接,即数据传输所经过的两台主机之间的虚拟连接。
接口(interface):指PPP接口,即IP驱动程序由数据报所经过的抽象实体。

四、ppp准备就绪

ppp 硬件准备就绪

1.无多端口卡

如果你不打算同时使用超过2条的ppp连接线路,那就相当简单,你只要准备一至二个调制解调器以及他们各自的与电脑的连接线即可,若需通过公用电话交换网,则还需再加上一至两条能拔通ISP或对方pppserver的电话线(包括ISDN等),如果两个pppserver之间距离较近(实践证明此数值应短于5OM),那么,你还需要另外的一些连线。

连线?连线!救救我,我糊涂了。

是的,在此有必要说说那些连线。  

我们在购置modem时,包装盒内会有一条必要的与计算机之间的连线(如果是内置式的则没有).虽然现在厂家的服务工作已经为你想的比较周到了,(如现在普遍用一端是双接头线9孔和25孔的串行端头,另一端则是固定的连接modem的9孔或25孔的串行端头),但不幸的是,你的那条较老的连接线并不适用于你现在的实际情况,(顺便提及:现在市面上有一些淘汰下来的,当初都卖151美元的旧式14.4kbps的外置调制解调器,经我试验,效果不错,但他们都没有提供那条线。),这时你作为一个标准的DIY,拿起焊枪,自己焊一条吧。   

具体的modem与pc之间的端口连线焊接图见下所示:

PC机9针串口 1 2 3 4 5 6 7 8 9
MODEM25孔接口 8 3 2 20 7 6 4 5 22

PC机25针串口 2 3 4 5 6 7 8 20 22
MODEM25孔接口 2 3 4 5 6 7 8 20 22

注:在LINUX下,2、3、7、8、20针是必须的。也可以用市场上现成的平行联结线,即1-25针各各相联。
 

而pc与pc串口间的直接连线焊接图示意如下:

PC机9针串口   2 3 4 5 6 7 8  
PC机9针串口   3 2 6 5 4 8 7  

PC机9针串口   2 3 4 5 6 7 8  
PC机25针串口  2 3 6 7 20 5 4  

PC机25针串口   2 3 4 5 6 7 20  
PC机25针串口   3 2 5 4 20 7 6  

顺便提及: 并口与并口之间的直接连线焊接图示意如下

PC机25针并口 2 3 4 5 6 10 11 12 13 15 25
PC机25针并口 15 13 12 10 11 5 6 4 3 2 25

再顺便提及:如何接连DDN线路中的路由器与交换机、交换机到网卡(以10M网为例)的连线:

有时需要自已动手做这样的连线,图示意如下

路由器(RJ45) 1 2 3 4 5 6 7 8
交换机(RJ45) 3 6 1 4 5 2 7 8

注:路由器到交换机、交换机到网卡的连线是相同的。

小资料:LINUX下如何配置MODEM
可以使用Linux图形界面下的相应工具(如minicom等)来测试modem并将其设置为你所想要的状态。

如果你实在厌倦了在网上东找西找这样那样的程序时,有一个几乎在所有的UNIX或LINUX中都被包含的指令,那就是cu,用它来配置modem是再简单不过了,键入以下的字符:

cu -l /dev/cua1 dir (用你的实际的moden端口号代替其中的cua1)

当屏幕出现“Connected”后通常可以用如下的指令,一般的回应为‘OK’,除非你屏蔽了其本地回应功能。以“~.”退出设置:

AT&F   (取modem的出厂设定)

ATS0=1  (modem在电话响一声后就自动应接)

AT&W   (把刚设的状态存起来)

注意:有些modem有硬件的DIP开关来设定其自动应答模式,请参考具体的手册说明。(例如对于MultiTech的MT1432BA来说可以将DIP5向上拔来设为自动应答)

呵呵,往往是越简单的越是没人提起。

2.使用多端口卡(multi-port serial cards)

如果你需要二个以上的串口来设置你的pppserver,一种经济的办法是添置多用户卡(通常的称谓)。此类型卡通常每片支持8个端口或16个端口,依其是否带有独立CPU又可分为智能卡与非智能卡两类。在国内的大多行业中几乎都使用我国宝岛台湾生产的“瑞旺”多用户卡,在本文就以“瑞旺”的""PE-518E""型号为实例参照。(每片120元,9600bps通信速率、ISA总线、全长型、非智能型8端口卡)。说实话,这种卡如今是仅能供教学之用了,如果你有其他更适宜的适配器资料,请别介意告诉我。   

要安装和使用此卡,首先是打开你的非超薄超小型机箱,找到一个ISA插槽,取下后档板,垂直均匀用力插好,上好螺钉,盖上机箱......(一个标准DIYER应一气呵成的标准 )。如果你的实际情况不符合其中的任一款,我推荐你使用另一款多用户卡,xxx,PCI总线,手掌般大小,带一个80386CPU的智能型32端口用户卡),将modem架上的各种连线接至各个端口后,硬件连线算是完成了。

然后在主板BIOS中屏敞掉原先的IBM标准串口com1和com2.

启动你的Linux核心(单用户模式)。

喔,说明书上只提供SCO lINUX下的配置方法,而那些命令(mkdev等)你又无法在Linux下找到和使用, 这时你得这样

在核心中加入该卡的支持。(记住,对于智能卡,一定要有LINUX下的驱动)

必要时,你得手工激活各个端口,然后再重新启动后测试一下。

技巧提示:自制端口测试器
对于扰人的多用户卡,有时你时常分不清到底是设备故障,还是线路有问题,这时一个简单的办法是用自已焊的串行端口测试器来为其下定义。

道理其实很简单,稍对串行端口的管脚定义研究一下(由于多端口卡以25针RS232C为最常见,所以在此以其为例,读者可以举一反三,制作出更多更适合于你的测试器)


芯脚分配 命名 EIA电路 CCITT电路 信号源 信号功能
1 PG - 101 - 保护地线
2 SD BA 103 DTE 已发送的数据
3 RD BB 104 DCE 已接收的数据
4 RTS CA 105 DTE 请求发送
5 CTS CB 106 DCE 清除发送
6 DSR CC 107 DCE 数据集就绪
7 SG AB 102 -- 信号地线
8 CD CF 109 DCE 载波检测
9 +V +V -- DCE 测试电压
12 HS -- -- DCE 高速
15 TC DB 114 DCE 发送时钟
17 RC DD 115 DCE 接收时钟
20 TR CD 108/2 DTE 终端就绪
22 RI CE 125 DCE 铃响指示器
24 XTC DA 113 DTE 外部发送时钟
25 OOS CN 142 DTE 终端忙碌


附注:

第9芯不是必需的。
若不需要同步操作时,也不需要第15和第17芯。
DTE表示数据终端设备(终端或计算机)
DCE表示数据通讯设备(调制解调器)
如果仅仅为了测试该端口是否有效,那多只需将一个独立的适宜插拨的25孔D型适配器的第2脚与第3脚直接相短接就可以了。

就这么简单。


3.ISP的资料暂缺

ppp相关软件准备就绪

本节介绍了你在架设pppserver之时所必须做的前奏,包括核心配置与软件支援。软件支援包括安装pppd 配置pppd和启动pppd.

核心配置ppp支援

当你对手头上的硬件了如指掌之后,你将发现,以后的旅途着实轻松舒适 。通常,你只要配置一次核心就可以了。

如何知道我的核心支援PPP?

在启动时,你的 Linux 核心会印出大量的讯息.如果核心支援 PPP 的话会包含此一讯息. 要观看这些讯息的话,看看你的系统记录档或用 dmesg | less 指令将这些讯息显示在萤幕上. 如果核心支援 PPP 的话你将会看到像这样的几行

PPP Dynamic channel allocation code copyright 1995 Caldera, Inc.

PPP line discipline registered. (这是 Linux 2.0.x 系列核心的讯息).

如果你没有以上的类似信息,那么你就要编译Linux内核。当然你首先得要有Linux内核的源代码。你可以在以下的站点上找到:

www.freshmeat.net Linux软件的速递中心.

freesoft.cei.gov.cn 中国自由软件库

www.linuxhq.com Linux的大本营

(下载时选用离你最近的镜像站点,而不要仅局限于上述的这几个。)

本文截稿时止,Linux的最新内核版本是2.2.14。 Linux内核的源码一般有两种形式:全部源码和Patch。使用全部源码,一般可以直接编译,如果是使用Patch,那么要注意了:你要知道你现在的内核的版本,然后要下载现在内核到最新内核的全部Patch。举个例子,如果你的内核版本是2.2.10,要升级到2.2.14,需要依次下载2.2.11,2.2.12一直到2.2.14的所有Patch,一个都不能少!

注意:如果你下载的是Patch,要按照版本号,由低到高,依次解开Patch。

#gzip -cd patch-2.2.11.gz | patch -p0

#gzip -cd patch-2.2.12.gz | patch -p0

#gzip -cd patch-2.2.13.gz | patch -p0

#gzip -cd patch-2.2.14.gz | patch -p0

当然,在编译之前,你还需要准备好编译环境: MAKE,EGCS。

在将核心解压至系统默认路径前,请检查 /usr/src/下面是否有 linux 符号连接。如果有,那么移去它.再建一个新目录linux2.2.14;

并建立一个linux符号连接到你的Linux2.2.14新内核目录。

现在假设你已将核心用我们那可爱的NETANTS下载到win95分区并已在Linux中执行了

#mount /dev/hda1 /mnt/win;

#tar zxvf /mnt/win/linux2.2.14.tar.gz -C /usr/src

#cd /usr/src/linux

#make menuconfig

当然运行这个指令仅是因为我喜欢这种折衷的界面显示方式。固然,你若喜欢纯字符界面方式可以选用make comfig,(不过当心,此命令方式无go back功能,一旦选错了得ctr-c后重来) 若你已配置好x-windows,那么你可以在x的shell中运行make xconfig 来配置核心。

在ppp(point-to-point)support(CONFIG-PPP)中选择Y或M.

如果你使用了模块,那么还需要生成和安装模块——虽然这是可选的,但是为了减少内核的存储空间,通常人们会使用模块。

其实你在配置核心级的ppp支持时你应该想得更多。 若你要把ppp server 兼做网关时还需IP forwarding的支持,同时还需考虑网络的安全得加入IP firewalls的支持。 若你明确的知道你的modem所支持的协议和另一些附加的功能(但或许并有通用),你可能还有必要添加一些额外的支持来优化整个系统。前提是你清楚的知道你正在做的是什么!

当你觉得所有必要的功能被添加或按需做成模块后,可以试着运行如下指令:

#make dev;make clean;make zlmage;

若系统最后提示新的内核存在于/usr/src/linux/arch/i386/boot中则表示编译内核成功

若是提示“内核太大了”等内容时,可以接着键入

#make bzlmage 以生成一个压缩的核,通常这样做就行了。

随后就是安装模组了

make modules

make modules_install

#depmod -a     (为模块建立正确的依赖关系 )

通过察看/etc/lilo.conf 来知道你的Linux用哪个目录的那个文件作为image目录。

例如: image = /boot/vmlinuz

将 /usr/src/linux/System.map 复制到 /boot 目录中。

将 /usr/src/linux/arch/i386/boot/zImage(或bzImage)新核心制到 /boot 目录中,

执行Lilo后以新核心重启你的计算机。

技巧提示:保留旧的核心
你在未能证实新核心可以稳定运行之前保留旧的核心是个好主意。推荐的做法是:

在解压新核心之前将/usr/src下的linux 更名。(如改为linux.old),然后创建一新空目录,
如linux2.2.14

然后用ln -s linux2.2.14 linux为其创建一个linux的符号链接。

之后再解压原始代码包,这样做的好处是在你以后的核心更新中,只要简单地更新符号链接就可以了,并且永远是有效的/usr/src/linux目录名。

在将新核心复制到/boot之前为其取一个代表性的可记忆的新核心名,如取成vmlinuz.ppp.2.2.14
然后编辑 /etc/lilo.conf,修改后的 lilo.conf 如下:

boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt timeout=50
default=linux
image=/boot/vmlinuz
label=linux
root=/dev/hda1 read-only
image=/boot/vmlinuz-2.2.14
label=linux214
root=/dev/hda1 read-only
other=/dev/hda2
label=dos
table=/dev/hda
别忘了执行#lilo ,然后系统提示以下信息:

Added linux * Added linux214 Added dos

#reboot

当执行lilo命令时,系统将加入另一个新的可引导的核心,若你在系统引导(即出现lilo时)忘了新核心的名字,可以用按tab键来显示所有可启动的项,由Label定义.

ok,现在你就已经多了一种选择了,这样当新核心不能引导或不正常时可以随时用旧核心。

推荐您使用英文原版的Rad Hat6.2发行套件,因为用它来敲敲打打我的核心很是得力。但相对来说,那些标榜xx核心汉化技术,世界第一的所谓中文linux套件,在重编译核心时都会或多或少的遇上麻烦。对于它们,我只取其可取之处,如独立的中文处理包。

(关于核心的更多信息可以参见第6节中的相关文档)


安装、配置和启动pppd软件包

通常现行的linux发行版中都包含了pppd软件包,如果你没有这些包或你想用另一类的pppd工具包,推荐你下载和使用mgetty软件包,该软件支持数据和传真功能。而Linux自带的getty不支持传真功能。它可以在freesoft.cei.gov.cn 上取得,现以mgetty为例,作具体说明。

注意:对于不同的PPP软件包,其具体配置存在着一些差异,通常的做法是,查看相应的手册页或Readme文档。

验证mgetty软件包:

如果你在相应目录下找不到文件如/sbin/mgetty, /etc/mgetty+sendfax/login.config,则你需要安装 mgetty RPM包。



配置mgetty软件包:

现假设你用COM1与COM2来接收外来的拔号,其上各外挂一只Acer 56 Surf Modem。对Modem的配置可以参见“小资料:LINUX下如何配置MODEM”。同样假设现已将其设为自动驳接外线呼叫。

1、在/etc/inittab文件中加入以下二行:

s0:345:respawn:/sbin/mgetty -a -m """" ATS0=1 OK -D -x 3 ttyS0 vt100 

s1:345:respawn:/sbin/mgetty -a -m """" ATS0=1 OK -D -x 3 ttyS1 vt100

参数说明:

id:runlevel:action:/sbin/mgetty [options] line [speed [term [lined]]] .

上句中各种参数以‘:’来分隔。各参数的具体意义为:

345:指明它是在哪一个runlevel下调用该行,一般23足够了,也可以写成2345.
runlevel 2 : 不带NFS支持的多用户模式
runlevel 3 : 普通的多用户模式
选项 -a: 波特率自动适配.
-m: 传送给串口设备/dev/ttyS0的初始化字符串,这里的是AT命令,设置modem在震铃一次后,接通. mgetty等待设备/dev/ttyS0返回的OK字符串,进入下一步处理.
ttyS0: linux中对串口定义的设备文件名:/dev/ttyS0 对应COM1; /dev/ttyS1 对应COM2;
vt100设置终端的类型
然后,运行 /sbin/init q 让改动生效。   

2、配置mgetty的配置文件:

在/etc/mgetty+sendfax/login.config文件中,去掉含有AutoPPP的一行的行头的注释. /AutoPPP/ - a_ppp /etc/ppp/ppplogin

其中: /AutoPPP/是登录与/dev/ttyS0相连的mgetty生成终端的用户的终端名, a_ppp 是基于/dev/ttyS0的物理连接上的PPP连接的连接名.

3、修改/etc/ppp/ppplogin 文件:

/etc/ppp/ppplogin 是登录以后自动运行的脚本(script)文件,例如:

#!/bin/sh
if [-f /etc/ppp/options.$TTY];
then exec /usr/sbin/pppd
else
exec /usr/sbin/ppd -detach
fi
或者只需简单的添加以下的行到/etc/ppp/ppplogin中:

#!/bin/sh

/usr/sbin/pppd auth -chap +pap login  

注:参数login表示用/etc/passwd中的用户名和密码进行PAP认证.  

而如果你不需要在拨入后做用户名和密码验证,只要去掉参数auth即可。     

然后保存文件,且给它执行权限 :

chmod +x /etc/ppp/ppplogin



4、现在改动/etc/ppp/options 文件,象下面:

  -detach

  modem

  lock

  crtscts

  asyncmap 0

  netmask 255.255.255.0

  proxyarp

  mtu 296

  mru 296

  ms-dns 192.168.10.25

注:192.168.10.25 是我的LAN上的一台DNS服务器,192.168是通常的LAN设置,至于采用10.25而非0.1则是因为10.25是我的生日,这样对我来说好记些且有自已的个性标志。如你没有可不设,你可以给拨入用户自动分配DNS。

附注:mtu/mru 两行设定建立PPP连接后,传输的包的尺寸,这里用296(256+40),也可以设为552(512+40),40代表空的没有任何数据的包的大小,设为比较小的值是为了假如一个PPPD进程建立后要传输很大的文件,可降低每个包的尺寸,以防其它的进程速度变慢,尽管减少了传输的每个包的尺寸,但不影响总体传输的速度。你也可以不设这两行。        



5、创建另外两个文件/etc/ppp/options.ttyS0 和 /etc/ppp/options.ttyS1

(后缀与相应的串口对应,为每一个串口定义不同的PPP连接参数):

刚开始可以在每个文件中各自加入以下的行, 其它的都注释掉.等调试通过后,再根据需要加入相应的参数.

# more options.ttyS0

  192.168.10.3:192.168.10.242   

# more options.ttyS1

  192.168.10.3:192.168.10.243  

注:192.168.10.3是我这台Linux 服务器的IP地址,

而192.168.10.242和192.168.10.243是我指定给拨入用户的两个PPP地址。



现提供一个仅供参考的配置文件:

# more options.ttyS0

asyncmap 0 netmask 255.255.255.0 #Local IP : Remote IP 192.168.1.100:192.168.1.101 lock noauth crtscts modem -detach debug proxyarp 



6、至于/etc/ppp/pap-secrets,你可以加入下面的行:

  * * """" 192.168.10.242   * * """" 192.168.10.243   

到此为止, 设置完成。   

溅了这么多的口沫,听起来似乎很烦,其实在实际操作中,只要三下五除二,一下子就搞定了。

呵呵,祝你好运。

启动pppd软件包

只要您成功地安装与设置了PPP包后,要启动PPPD只要在任意时刻键入pppd就行了。我通常是在机器启动时就启动它。

现以TurboLinux中文版4.0为例做个简单说明:

#turboservice

只要选中pppd一项,你就可以让机器在下次启动时自动运行pppd服务了。

对于RH及与其兼容的发行版本来说,这个命令就是使用setup,然后选用“系统服务”一项。

我不知道为什么会使用不同的命令名! :-(

小结:

在mgetty中的一些重要的相关文件:

/sbin/mgetty
/etc/mgetty+sendfax/login.config
/etc/inittab
/etc/ppp/ppplogin
/etc/ppp/options
/etc/ppp/options.$TTY(其中,$TTY的值为你所用的串行接连端口号)
/etc/ppp/pap-secrets
用户拨入成功建立PPP连接后,如果你需要访问LAN上其它服务器,那么你必须打开该PPP服务器的IP转发功能,echo 1 /proc/sys/net/ipv4/ip_forward .   

如你需要在空闲一段时间后自动解除连接,如20分钟,那么加入idle 1200到/etc/ppp/options。   

高屋建领:PPP链接配置的类型与特点
链接配置有四种类型:

专用型链接。
动态输入型链接。
动态输出型链接,透明起动。
动态输出型链接,手工起动。
各种链接各有不同的特点和其最宜的应用环境,系统中PPP的链接配置的数目和内容取决于系统预期的PPP通信类型。这些文件可手工编辑,也可以利用相应的工具来完成设置。

专用型链接的特点。

此配置要求用一条专用串行线链接一台远程主机,包括两个建筑物之间的租用线和链接两台PC间的串行电缆等。

要求将一条串行线专门用于一个PPP链接。
允许本地或远程主机发起链接。
必须由本机指定本地及远程主机的IP地址,远程主机必须接受这些地址。
注意:
如果远程主机必须分配IP地址,则需使用动态类型的链接配置。
对专用型链接要使用非modem控制的串行线。
动态输入型链接。

当需要在动态获得的串行线上接受远程主机的链接请求时,可以采取此类型。

要求动态获得串行线,串行线可共享。
要求由远程主机通过注册程序发起链接。
用于识别本地及远程主机的IP地址可任由本地主机或远程主机指定。
动态输出型链接,透明起动。

如果本地主机通过动态获得的串行线发起与远程主机的PPP链接,且本地主机能够分配链接内本地主机和远程主机的IP地址,则可以采用此类型。

要求动态获得串行线,串行线可共享。
要求由本地主机发起链接。当出现传往远程主机IP地址的IP包时,此链接将自动启动。
要求本地及远程主机的IP地址必须由本地主机指定,由远程主机接受。
动态输出型链接,手工起动。

如果本地主机通过动态获得的串行线发起与远程主机的PPP链接,且远程主机能够分配链接内本地主机和远程主机两者或两者之一的IP地址,则可以采用此类型。


要求动态获得串行线,串行线可共享。
要求由本地主机发起链接。只有手工执行相应指令后,此链接才被启动。
识别本地及远程主机的IP地址可任由本地主机或远程主机指定。