Linux 版 (精华区)
发信人: abert (eminence), 信区: Linux
标 题: Re: 求教,请问有在linux下装过modem的么?
发信站: 哈工大紫丁香 (2000年10月16日07:48:13 星期一), 站内信件
这有一篇我们讨论组的文章希望有用:
>我这几天主要在linux上进行共享modem的按需拨号,下面是实现的基本过程(感谢
>kevin的帮助),希望能够对大家有所帮助.bye(本来还想发到工大BBS,可惜速度是
>在是太慢,kevin老弟帮我发一下吧)
>Linux上共享Modem的安装与配置
>目的: 通过命令行指令拨号上网,同时可以共享该modem给其他人按需拨号
>(其实我们可以很方便的使用X-windows下的KPPP拨号工具上网,也可以使用字符模式
下的minicom来拨号上网,但是如果想获得按需拨号的特性,就必须通过命令行来拨号上
网了)
>
>环境
>硬件: PC Server 一台, Modem卡一块
>软件: Linux Red Hat 6.0, Linux 2.2.14内核, Modem driver
>
>1 升级系统内核
>缺省的系统内核缺少对PPP的支持,所以应该先升级系统内核。我是DL了linux-2.2.14
的内核,将原来的2.2.5-15 升级为支持PPP的2.2.14。(大家一定都非常熟悉如何升级
内核了,只要注意加入PPP支持就可以了,你要是多加入一些Network Options当然会更
好)
>
>2 安装Modem卡
>安装Modem 卡的driver(因为我的modem卡配有相应的Linux上的rpm driver,所以只是简
单的运行 rpm –ivh modem-driver.rpm就完成了。)
>
>3 建立Modem拨号配置文件
>运行netconf 来配置PPP/SLIP/PLIP属性,选择Add,在出现的PPP/SLIP/PLIP选项中选
>择PPP,按Add,根据提示输入Phone number(Login name & Password暂时闲空着即可
>), 按Accept在出现的ppp0设备上回车,就进入对该PPP设备的具体配置,根据情况
>修改Line Speed, 并在最后的PAP节里的Username和Secret然后选择Accept完成了对
>modem拨号的设置。
>退出该配置界面,你可以/etc/sysconfig/networkscripts目录下找到刚才建立起来
>的配置文件chat-ppp0&ifcfg-ppp0, 以及系统原有的ifup-ppp& ifdown-ppp。在
>/etc/ppp下面还有用来存放用户名和口令的pap-secrects.
>现在就可以试着拨号了, 运行 /etc/sysconfig/network-scripts/ifup ppp0
~~~~~~~~~~~
这个文件是设置完成后就有
的吗?
我没找到这个文件
>在modem的吱吱嘎嘎一阵乱叫声后,就登陆到Internet上了,拨号的成功信息会出现
>在/var/log/messages里,最后两行就是 你所获得的local IP & remote IP地址。
>用ifconfig –a也可以查看出来。
>在ifconfig中可以看到拨号后的网络设备ippp0,以及它的端对端IP地址,接着核对路
>由表(运行route命令即可),请注意缺省路由一定要指向端对端连接中的远端IP地址
>。
># ping 本地PPP的IP地址
># ping 远端的IP地址
># ping 202.108.32.200 (fm365的IP地址)
># ping 202.118.224.2 (哈工大BBS的IP地址)
>
>停止拨号
># /etc/sysconfig/ifdown ppp0
>
>4.其他功能的设定:
>(1) 怎么在/var/logs/messages下面有ppp-compress之类的三行错误信息?
> 在文件/etc/conf.modules里加入如下三行即可消除如下错误:
> alias ppp-compress-21 bsd_comp
> alias ppp-compress-24 ppp_deflate
> alias ppp-compress-26 ppp_deflate
>(2) 使用域名访问网络
> Ping 202.108.224.2,一定已经通了,ping bbs.hit.edu.cn,为什么不通?
> 修改/etc/resolv.conf,将第一行search等字样去掉,只剩下外部的
>nameserver 202.106.196.115 即可
>(3) 如何在线路空闲一段时间后自动下线
> 电话费是如此之昂贵,总站着线路怎么成?要不至少我们应该为单位节约点资源吧
>。
>OK,方法很简单,
> 当然,首先应该把/etc/sysconfig/network-scripts/ifcfg-ppp0的选项PERSIST=”
yes”改为“no”.
> 并在该文件的选项PPPOPTIONS里加入如下内容
> PPPOPTIONS=”idle 600”
> Idle后面的参数单位为秒,代表着如果线路上空了10分钟后就自动断线
>(4) 如何按需拨号?
>Pppd提供按需拨号的特性,但是他要求我们提供remote IP地址,我们怎么知道ISP会
>分配给我们那个地址,笑话!怎么办?到网上搜索 dial on demand的文章,你会发
>现,我们需要有接受远程改变remote address IP的功能才行,所以在
>/etc/rc.d/rc.local里先加入一行: echo 1 >/proc/sys/net/ipv4/ip_dynaddr
>然后再在/etc/sysconfig/network-scripts/ifcfg-ppp0里的PPPOPTIONS里加入如下
>内容:
>PPPOPTIONS=”demand ipcp-accept-remote ipcp-accept-local”
>启动拨号ifup ppp0, 然后 ping www.sina.com.cn,此时你就应该能听到modem的拨号
声了.
>(5) 如何做到共享modem?
>
> 甲:你在linux上倒是可以拨号上网了,但是电话线只有一条,我想浏览网页怎
>么办?
> 乙:那还不容易?让他们共享你Linux上的modem贝。
> 甲:那可怎么做阿?会不会很难?
> 乙:不用担心,我都能够实现在linux本机上按需拨号了,现在只需要在机器上
>再安装一个代理不就完了嘛?
> 甲:用什么代理呢?
> 乙:用Linux的squid做代理贝
>
> 我是从网上DL了较新的Squid-2.2.tar..gz,然后configure, make, make
>install,
>再修改一下/usr/local/squid/etc/squid.conf里的一些参数就可以了,另外最好根据
>README建立起存放cache文件的目录结构,然后把/usr/local/squid/bin/squid加入
>到/etc/rc.d/rc.local里
> 然后你在其他机器的浏览器proxy里指明linux的IP地址及其端口号(缺省为
>3128),输入 http://www.sina.com.cn ,咦,怎么还不行?快去linux机器上查看/etc
/sysconfig/network文件,看
>FORWARD_IPV4=?怎么是false?快改成true吧,哈哈,是不是可以共享Linux上的
>modem上网浏览了?
>
>
>附:
>Modem拨号需要的配置文件主要放置在/etc/ppp和/etc/sysconfig/network-scripts
># cd /etc/ppp
> 进入/etc/ppp目录,确认该目录下的文件配置正确(主要是查看pap-secrets和
>chap-secrets)
># cd /etc/sysconfig/network-scripts
> 确认该目录下有ifup-ppp(2889字节)ifdown-ppp(1199字节)
># more /etc/sysconfig/network-scripts/chat-ppp0 .
> 其文件内容如下:
>'ABORT' 'BUSY'
>'ABORT' 'ERROR'
>'ABORT' 'NO CARRIER'
>'ABORT' 'NO DIALTONE'
>'ABORT' 'Invalid Login'
>'ABORT' 'Login incorrect'
>'' 'ATZ'
>'OK' 'ATDT169' 请确认该电话号码
>'CONNECT' ''
>'TIMEOUT' '5'
>'~--' ''
># more /etc/sysconfig/network-scripts/ifcfg-ppp0 .
> 其文件内容如下:
>DEVICE="ppp0"
>ONBOOT="no"
>USERCTL="no"
>MODEMPORT="/dev/modem"
>LINESPEED="57600"
>PERSIST="no"
>DEFABORT="yes"
>DEBUG="yes"
>INITSTRING="ATZ"
>DEFROUTE="yes"
>HARDFLOWCTL="yes"
>ESCAPECHARS="no"
>PPPOPTIONS="demand idle 600 ipcp-accept-remote ipcp-accept-local lock
>noauth"
> #上面这行非常重要,是用于pppd的dial on demand, 超时断开的关键选项
>PAPNAME="169"
>REMIP="202.96.88.44" 此行必须有IP地址
>NETMASK=""
>IPADDR=""
>MRU=""
>MTU=""
>DISCONNECTTIMEOUT=""
>RETRYTIMEOUT="5"
>BOOTPROTO="none"
>
>
>确认/etc/sysconfig/network文件中 FORWARD_IPV4=true,/etc/sysconfig/network
>的文件内容应该类似如下:
>NETWORKING=yes
>FORWARD_IPV4=true
>HOSTNAME=test.hit.com.cn
>DOMAINNAME=hit.com.cn
>GATEWAY=0.0.0.0
>GATEWAYDEV=eth0
>
>确认/etc/rc.d/rc.local里有这样两行:
>/usr/local/squid/bin/squid
>echo 1 >/proc/sys/net/ipv4/ip_dynaddr (此行非常重要,是用于dial on demand的一
个决定性的因素)
>
【 在 Iori (草籽) 的大作中提到: 】
: 用minicom连到isp,一切正常,
: 然后打开pppd就不好用了,
: 吱吱嘎嘎响了一阵后就退出来了,大概说modem没准备好什么的……
: 我faint。
: 那位明白给小弟讲一下具体怎么装modem拨号上网。
: 估计是我什么地方没搞明白。
: 谢了先。
--
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: linux.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.526毫秒