当前位置:Linux教程 - Linux综合 - 如何安装PPPServer

如何安装PPPServer

  最近因工作需要,要在Linux上装个PPPserver,接受拨接进来的电 话,连上整个公司的ethernet网路,再经由router接上internet,过程并 不顺利,整台Linux有许多地方需要设定,为避免大家浪费许多无谓的时间, 所以有这篇FAQ的产生,我所使用的是Linux1.0.9这份FAQ并没有完整的介 绍Linux PPP的部份,只针对PPP server的部份,把我安装的经验写出来, 适合已装上PPP,并能用来连接其他PPP server的人。 若想从无到有,你可 以叁考开放系统与网路杂志1994年,八月份出版, 曾瑞源先生的Internet低 廉上网,再叁考本篇及各种FAQ就可以建立一个PPP server了。 若想更进一 步, 让不同网路的PPP server相连,可以造成一 个router,让两个网路 互通有无,但这部份我没试过,请各位努力研究。要建立PPP server有三个步骤: 1.你的modem必须要能接电话。 2.你的linux必须能透过serial line显示login prompt。 3.建立呼叫pppd的account 一、 如 何 让modem接 电 话。 我不会用linux来设定,所以用windows 3.1的终端机来设定modem, 执行windows的终端机。对modem下ATS0=1,这是叫modem在电话响一声後就接, =2就是响两声。AT&W,把刚设的状态存起来,今後每当电话响一声,modem就 接起来了。 二、 如何透过serial line显示login prompt。 在/etc底下,有个inittab,有段内容要设定如下: # Serial lines 这是我的设定, 可能与你的不同。 #s1:45:respawn:/sbin/getty ttyS0 19200 vt100 s2:45:respawn:/sbin/getty ttyS1 19200 vt100 每一行之前若加上#,代表注解。 意义为 id:runlevel:action:/etc/getty [options] line [speed [term [lined]]] 其getty必须为getty_ps,这部份说明可以在Serial-HOWTO中找到。有了这段设定, 重头开机,并连上後,若下ps aux指令,应可看到一些资料,其中某些栏位已省略。 .... root 88 232 v02 S 10:58 0:00 /sbin/getty tty2 3840 root 88 233 v03 S 10:58 0:00 /sbin/getty tty3 3840 root 92 264 psf S 11:33 0:00 /sbin/getty ttyS1 19200 .. .. /dev/ttyS1是给拨进来的connection使用的。 /dev/cua1是拨出去用的。 以上两者皆为com2到目前为止,如果用modem拨进来,将可出现login prompt的画面如 下: login: 此时整条serial line已通,可以login,并下一些简单的命令, 但local端和remote端并未开始商议PPP。 三、 为了提供PPP service,我们要建立一个account,如:ppp01,他的login shell可 以把pppd叫起来?nbsp;并和对方沟通。作法如下:下一adduser命令 linux>adduser ----------------------这 以 下 为adduser AP的user interface Adding a new user. The username should be not exceed 8 characters in length, or you many run into problems later. Enter login name for new account (^C to quit): ppp01 Editing information for new user [ppp01] Full Name: ppp01 GID [100]:100 Checking for an available UID after 500 501...502...503...504...505...506...507...508... First unused uid is 509 UID [509]:509 Home Directory [/home/ppp01]: /home/usr/ppp01 Shell [/bin/bash]: /etc/ppp/ppplogin PassWord [ppp01]:xxxxx -------------------------以 上 为adduser 一般login shell为/etc/bash或/etc/csh, 但我们为了在login时就执行pppd, 建立一个ppp connection,所以写了一 个executable scrip内容如下: ------------以 下 为/etc/ppp/ppplogin
[1] [2] 下一页 

#!/bin/csh exec /usr/etc/pppd passive netmask 255.255.255.0 proxyarp :140.xxx.xxx.xxx ------------以 上 为/etc/ppp/ppplogin passive意思是pppd一开始会尝试negotiate,若没有回应,则等待。 netmask 255.255.255.0设定subnet mask。 proxyarp add an entry to this systems ARP table。 ∶140.xxx.xxx.xxx设定拨进来那端的IP 关於pppd这部份的option,可用man pppd来研究。 做了adduser後/etc/passwd的内容如下: ppp01:(encrypted password):505:100:ppp01:/home/usr/ppp01:/etc/ppp/ppplogin 上述是server端建立的方法,至於client连接ppp server不多做介绍, 只指出要注意的地方,我使用的软体是winspan 3.0,至於Trumpt winsock、linux pppd,只听过没用来连过,各位就多见谅了,其设定是大同小异的。Winspan里有 个configure,里头有界面卡,选择ppp、设定,设定baud rate等,重要的是local ip address,这个地方要和ppplogin中所设的:140.xxx.xxx.xxx一样,因为这linux pppd 的设定方法,把这ip固定了,所以要设一样的。至於要dynamic assign IP、或更多 条线,这就叁考其他faq,我并没有尝试。至此大功告成,用ppp01帐号login後,pppd就 开始和对端商议PPP了。但事情真的这麽顺利吗?可能没有,你可能碰到某些状况如下: 1.modem可以接电话了,但接下来没有任何动作,login prompt并不会出现。解法: /etc/default下, 有getty一开始要读的档案,其内容可能如下: CLEAR = NO HANGUP=YES IN99v="" ATZ\r OK WA99vFOR=RING CONNECT="" ATA\r CONNECT \s\A 你若是用man getty研究其option就知道为什麽不出现prompt,所以我改成 CLEAR = NO HANGUP=YES login prompt就出现了。 2.怎麽一切设对,ppp connection也建立起来了,可以从local端telnet到linux上了, 但却无法到其他机器上。原因:pppd的ARP table并没有成功建立,packet无 法route出 去。理论上pppd应可自动建立ARP table,但我不知哪里设错,无法建立。解法: 手动建立ARP table,可叁考NET-2-HOWTO或NET-3-HOWTO的9.Routing。 # #Proxy ARP for those dialin users who will be using this #machine as a server # /sbin/arp -s 140.xxx.xxx.xxx 00:00:C0:AD:37:1C pub #End proxy arps 以arp -a指令将可发现? (140.xxx.xxx.xxx) at 00:00:C0:AD:37:1C 这样才可以正确route出去。 注意:00:00:C0:AD:37:1C是ethernet address,也就是网路卡的hardware address, 在linux开机时注意看将可发现。 3.可以正常显示,并当terminal Server,但用ppp帐号login後就断了. 原因: pppd根本没有执行,可在console以ppp帐号login,看该帐号是否的确可以执行PPPD. 希这篇能给那些想在办公室或实验室装个PPP server的人一点帮助?nbsp;若本篇FAQ有错误 的地方,请多多见谅..

(出处:http://www.sheup.com)


上一页 [1] [2] 

希这篇能给那些想在办公室或实验室装个PPP server的人一点帮助?nbsp;若本篇FAQ有错误 的地方,请多多见谅..

(出处:http://www.sheup.com)


上一页 [1] [2] [3]