| 网站首页 | 新闻中心 | 技术资料 | 下载中心 | 图片中心 | 电子书 | 维修图纸 | 笔记本频道 | 手机软件 | 维修视频 | 驱动仓库 | 论坛 | 
 

RSS

收藏本站

设为首页

   
  您现在的位置: 龙腾电脑维修网 >> 技术资料 >> 网络专栏 >> ADSL >> 文章正文Linux下设置PPP连接
 Linux下设置PPP连接 【字体:

Linux下设置PPP连接

来源:网络转载 作者:未知


  
  在局域网中设置拨入服务器 
  
  在局域网中设置拨入服务器目的就是将Linux局域网设置成跟ISP一样的拨号服务器。假设用户在公司用Linux设置了拨号服务器,然后在家里通过拨号连到公司的拨号服务器上,进而访问公司的局域网,如此就可以实现“家庭办公”。如果公司的服务器是连在Internet上的,用户就可以浏览Internet了。“设置基本的拨号服务器”将告诉用户怎样实现这一功能。“回拨(Callback)”将讲述怎样节省联网所需的电话费。 
  
  因为已经介绍如何用Linux服务器做PPP客户端,所以这一节用Windows 98做客户端来配合讲述Linux服务器。 
  
  1.设置基本的拨号服务器 
  
  如果安装了PPP服务,可以将/etc/sysconfig/network文件里FORWARD_IPV4=false改成true就行了。之后需要重启以激活IP转发。 
  
  (1)使Liunx能够接受电话拨入 
  
  现在要做的就是使Modem所接的那个串口可以接受外来连接。打开/etc/inittab,会看到这样的几行代码: 
  
  #Run gettys in standard runlevels 
  
  1:2345:respawn:/sbin/mingetty tty1 
  
  2:2345:respawn:/sbin/mingetty tty2 
  
  在这几行之后,加上如下一行代码: 
  
  3:2345:respawn:/sbin/mgetty ttyS1 
  
  它的意思就是让Mgetty的串口ttyS1上监听,等待连接,如果有连接请求,Mgetty就向用户提示输入用户名和密码。 
  
  修改好之后,要使修改有效,可以运行如下代码: 
  
  init q 
  
  为了从远端登录,还要有一个账号,用useradd命令加一个叫ppp的用户,并用passwd命令为它设置口令。 
  
  (2)启动pppd与客户建立PPP连接 
  
  打开/etc/passwd文件,找到用户ppp的那一行,应该是这样的: 
  
  ppp:x:500:500::/home/ppp:/bin/bash 
  
  由此可以看出,用户ppp使用的shell程序是bash,现在要做的就是用pppd换掉这个bash。这样当用ppp登录时,就不会执行bash,而是执行pppd。如此,pppd就在服务器端启动了。 
  
  具体可以在/etc/ppp建立一个ppplogin文件,内容如下: 
  
  #!/bin/sh 
  
  exec/usr/sbin/pppd debug passive asyncmap 0 proxyarp lock Modem crtscts 
  
  chmod+x ppplogin 
  
  用ppplogin替换用户ppp的登录shell,就像如下代码: 
  
  ppp:x:500:500::/home/ppp:/etc/ppp/ppplogin 
  
  由于pppd执行必须要root权限,所以还要将pppd设成以root权限执行: 
  
  chmod u+s/usr/sbin/pppd 
  
  替换了登录shell和修改pppd属性之后,可以试一试。与前面介绍方法一样进行拨号,在输入用户名和密码之后,如果能看到pppd所特有垃圾字符,并且一行一行的没完,就说明服务器端pppd已经启动了。接着单击“继续”按钮,也就是启动客户端的pppd,与服务器的pppd进行握手。过了一段时间,就会看到登录网络成功,其标志就是熟悉的绿色小计算机出现了。 
  
  (3)针对Windows 98客户的特殊设置 
  
  Windows 98要求域名服务器在连接的时候传给它。pppd有个参数ms-dns,就是用来传DNS给客户的。在ppplogin里加上这个参数就可以了,比如: 
#!bin/sh 
  
  exec/usr/sbin/pppd debug passive asyncmap 0 proxyarp lock 
  
  Modem crtscts ms-dns 202.106.0.20 
  
  这两个DNS中,第一个DNS是主,第二个DNS是辅的。 
  
  2.回拨(Callback) 
  
  Callback就是当用户拨号连到拨号服务器时,服务器先断掉连接,然后再拨回给用户。用户的Modem接收这个呼叫,从而建立拨号连接。这样就给“家庭办公”创造了有利条件,可以在家里用回拨的方式连到公司进行办公。 
  
  (1)服务器端设置 
  
  在设置之前,应该确保Mgetty的Callback程序安装好了。将下面这行内容加到/etc/mgetty+sendfax/login.config中: 
  
  call_hxf--/usr/sbin/callback-d-l ttyS1-s 115200 -S 62345678 
  
  前面的call-hxf是指为Mgetty增加一个名为call_hxf的用户入口。这个用户只是Mgetty用来启动Callback程序的,而不是Linux系统中的用户,不要真的用useradd添加一个call_hxf用户,这个call_hxf用户名只是Mgetty用的,不是系统的。用户通过Modem连到Linux上,Mgetty提示输入用户名时,如果输入的是call_hxf,Mgetty就调用/usr/sbin/callback程序来处理回拨。参数-b是指在/var/log/mgetty.ttyS1留下调试信息;-1 ttyS1是指使用ttyS1为拨出设备;-s 115200是串口速率;-S 62345678是指定的回拨电话号码。如果没有-S参数,Mgetty就会提示输入回拨的目的电话号码。基于安全考虑,建议这里指定回拨的目的号码,否则别人用call_hxf登录,同样也可以使用回拨了。 
  
  现在可以试一试在Windows 98环境下,使用“拨号后出现终端窗口”的拨号连接。当出现终端口并提示login时,输入call_hxf。如果在login.config中没有指定回拨号码,现在就会有提示问回拨的电话号码了。输入现在使用的号码,此时服务器断开电话准备回拨,但是Windows 98会认为服务器断了,弹出一个对话框告诉用户服务器断开连接,请稍候再试。过一段时间后,电话会振铃,服务器正在回拨,但是Windows 98已经不响应了,看来Windows 98还要设置一下才能协调起来。现在还是把Linux服务器上的那个callback进程停止,不然它会一直播下去的。 
  
  (2)客户端设置 
  
  服务器准备回拨的时候要把电话先断掉。目的是让Windows 98检测不到这个变化,这样它就不会退出拨号程序了。打开所使用的拨号连接的属性的“常规”、“设置”、“连接”、“高级”、“附加设置”,将AT&C这个命令写在附加设置里。这个命令的意思就是让串口听载波检测(Carrier Detect)那根线保持有效,这样Windows 98就会认为电话一直是通的,服务器回拨时断掉电话它就检测不出来了。这样Windows 98的拨号客户程序就可以继续与服务器对话,并建立连接了。 
  
  下面的工作就是使Windows 98能接听服务器回拨的电话,并通过服务器的用户认证。建立一个脚本文件callback.scp,内容如下: 
  
  proc main
  waitfor "ogin:"
  transmit "call_hxf^M"
  waitfor "munber for callback:"
  transmit "65145678^M"
  waitfor "RING"
  transmit "ATA^M"
  waitfor "ogin:"
  transmit "^M"
  waitfor "assword:"
  transmit $PASSWORD
  tramsmit "^M"
  endproc 
  
  在所使用拨号连接的“属性”、“制作脚本”里填上文件的全路径和文件名。用户根据实际情况修改相应地方。 
  
  此脚本由一个一个的waitfor-transmit对组成,收到登录提示符“login:”,就发送callback的用户名call_hxf。如果服务器没有指定回拨的电话号码,就要在收到“number for callback:”这样的字符串后,发送自己的电话号码。当用户给了回拨号码后(或服务器已经指定),服务器就挂断电话、进行回拨。客户端Modem检测一个振铃,就向串口发送一个RING字符串,Windows 98从串口读到这个字符串,就会向Modem发出ATA命令,让它接听这个电话。之后,Mgetty向客户提示输入用户名和密码,这里的$USERID和$PASSWORD就是引用用户在拨号对话框里填入的用户名和密码。 
在这个过程中,Windows 98的拨号程序一直通知用户正在验证用户名和口令。因为它不知道在做回拨,所以只好认为是在验证口令了。在整个回拨过程中,不要随便按“取消”,因为服务器端的Callback程序并不知道已取消了,它会一直拨电话。这个Callback程序的反应速度不是很快,在服务器断掉电话到听到回拨的电话铃声,可能要等20~30s。在回拨过程中,会发现在有一个被最小化的终端窗口,它就是Callback.scp脚本文件执行时的窗口。在听到回拨的电话铃声时,会在这个窗口看到“RING”,这表示Modem收到一个振铃。接着Callback.scp就会发出“ATA”接听这个电话,PPP就通了。  

上一页  [1] [2] 

收藏此文到百度搜藏 百度搜藏
 
  • 上一篇文章:
  • 下一篇文章: 没有了
  • Linux下设置PPP连接相关文章
    RedHat系统ADSL上网配置指南
    优化ADSL加快P2P下载速度
    八种常见ADSL上网断流现象的原因
    linux系统网卡驱动程序的编译与安装
    虚拟机Linux系统下连接ARM开发板的方法
     
     
    推荐文章
      普通文章 Linux下设置PPP连接 (3月9日)
    普通文章 RedHat系统ADSL上网配置指南 (3月9日)
    普通文章 优化ADSL加快P2P下载速度 (2月1日)
    普通文章 八种常见ADSL上网断流现象的原因 (2月1日)
    普通文章 最新电信封ADSL路由共享上网的解 (1月22日)
    普通文章 突破ADSL限制 通过宽带路由多机共 (12月9日)
    普通文章 ADSL MODEM和电话 网卡的连线方法 (11月26日)
    普通文章 宽带ADSL Modem防攻击方法 (11月26日)
    推荐文章 主流接入技术ADSL技术发展及应用 (11月2日)
    普通文章 ADSL Modem防黑客攻击技巧 (10月26日)
    热门文章
      普通文章 Linux下设置PPP连接 (3月9日)
    普通文章 RedHat系统ADSL上网配置指南 (3月9日)
    普通文章 优化ADSL加快P2P下载速度 (2月1日)
    普通文章 八种常见ADSL上网断流现象的原因 (2月1日)
    普通文章 最新电信封ADSL路由共享上网的解 (1月22日)
    普通文章 突破ADSL限制 通过宽带路由多机共 (12月9日)
    普通文章 ADSL MODEM和电话 网卡的连线方法 (11月26日)
    普通文章 宽带ADSL Modem防攻击方法 (11月26日)
    推荐文章 主流接入技术ADSL技术发展及应用 (11月2日)
    普通文章 ADSL Modem防黑客攻击技巧 (10月26日)
    公司简介 -联系方法 -合作伙伴 -RSS订阅 -意见反馈-版权声明 

    @ 2006-2008龙腾电脑 版权所有. ALL RIGHTS RESERVED.

    浙ICP备05046531号