Chinaunix

标题: linux下ADSL拨号的问题 [已解决] [打印本页]

作者: sxqw    时间: 2007-03-07 14:36
这种情况大家都没有遇见过吗?
作者: kevin.tan    时间: 2007-03-07 16:52
将/etc/ppp/pppoe.conf中的

CONNECT_TIMEOUT=0试试
作者: sxqw    时间: 2007-03-07 17:24
已经做过这样的测试,还是不行
作者: kevin.tan    时间: 2007-03-08 09:57
基本上,我是这样解决的,我的NAT Server ( 通过ADSL接入到internet)同时担任PPPoE Server,每个来自内网的pppoe拔入都会生成一个ppp+端口,

因此同样出现你所遇到的问题,由于ADSL 线路不稳定,不排除在ADSL断流的同时,内网的客户端进行pppoe拔入,这样ppp0 就被占用了,我是设置上述参数基本解决这个问题!
作者: sxqw    时间: 2007-03-08 10:29
我试过多个redhat版本和ppp版本情况都一样,大概看了一下应该是ppp拨号时起逻辑端口的机制造成的,第一个拨起的就是ppp0第二个就是ppp1 。。。而不是 ifcfg-pppX 中配置的DEVICE值。如果配置文件是 ifcfg-ppp1 文件内容如下:
BOOTPROTO=dialup
CLAMPMSS=1412
CONNECT_POLL=6
CONNECT_TIMEOUT=0
DEFROUTE=yes
DEMAND=no
DEVICE=ppp1
ETH=eth1
FIREWALL=NONE
LCP_FAILURE=3
LCP_INTERVAL=15
NAME=DSLppp1
ONBOOT=yes
PEERDNS=no
PIDFILE=/var/run/pppoe-adsl-ppp1.pid
PING=.
PPPOE_TIMEOUT=60
PROVIDER=DSLppp1
SYNCHRONOUS=no
TYPE=xDSL
USER=szxxxx@163.gd
USERCTL=yes
此时无论怎么拨号起来后的逻辑端口都是 ppp0 而如果操作 ifdown ppp0 或 ifup ppp0 都是无效的只能对ppp1操作才有效。

这样操作起来总是有些不便,而且实际使用时也会带来一些问题,不知各位高手能否有好的解决办法?  谢谢
作者: llzqq    时间: 2007-03-08 11:48
配置PPPOE客户端软件
  
安装ppp0设备:

# adsl-setup

安装完软件包后配置/etc/sysconfig/network-scripts/ifcfg-ppp0

# vi /etc/sysconfig/network-scripts/ifcfg-ppp0
修改:
PPPOE-TIMEOUT=0
CONECT-TIMEOUT=0
PEERDNS=no
作者: sxqw    时间: 2007-03-08 11:59
PPPOE-TIMEOUT=0
这个我也试过,这个只能保证 ppp 拨起后一直占用 ppp0 的逻辑端口
如6楼中我的例子,我的设定是 ppp1 ,无论则么拨起的都是 ppp0
最好的情况就是 ifcfg-pppX 和文件里 DEVICE=pppX  中配置的是 pppX 而拨起后就是 pppX的逻辑端口。我说的可清楚?
作者: kevin.tan    时间: 2007-03-08 13:24
1.停掉pptpd服务;

2.备份ifcfg-ppp1,重新adsl-setup;

[ 本帖最后由 kevin.tan 于 2007-3-8 13:26 编辑 ]
作者: ssffzz1    时间: 2007-03-08 14:03
只好改PPP的源代码了.
作者: sxqw    时间: 2007-03-08 14:11
原帖由 kevin.tan 于 2007-3-8 13:24 发表于 9楼  
1.停掉pptpd服务;

2.备份ifcfg-ppp1,重新adsl-setup;


我需要用到多个 pppX 接口, 两条ADSL还有PPTP需要在不同的ppp逻辑端口上做NAT和路由,而pppX偶尔会错就出问题了,麻烦
所以最理想的就是设定的是 pppX 拨起就恒定是 pppX 这样就不会有问题了。
作者: sxqw    时间: 2007-03-08 14:13
原帖由 ssffzz1 于 2007-3-8 14:03 发表于 10楼  
只好改PPP的源代码了.


  可惜我不会改代码,所以就在这里看看高手们又没有什么好的解决办法。
作者: sxqw    时间: 2007-03-09 13:43
不修改原代码就没有办法解决吗?
作者: platinum    时间: 2007-03-09 13:49
在linux RHEL4下使用ADSL,ADSL配置为ppp0端口即ifcfg-ppp0,但有时ADSL又拨起来后 ifconfig 看到的逻辑端口又是ppp1。

当是 ppp1 的时候,ifconfig 是否仍有 ppp0 设备?
linux是做网关,NAT从ppp0口上出去,如果起的是ppp1的逻辑端口整个网络就上不了网
这要看你的 NAT 是如何做的了
作者: platinum    时间: 2007-03-09 14:29
若 Linux 的默认路由一直不变,可以考虑去掉 -o ppp0 参数
作者: sxqw    时间: 2007-03-09 17:04
画图太慢,简单描述一下
用 linux 做网关,内部有三个子网,连两条 ADSL 线路 A 5M 和 B 2M, 公司外的同事还会用 PPTP 连入公司内部特定的服务器,为保证正常对外业务,公司服务器和对外访问25、110走一条线路  A ,其他上网数据走另外一条线路 B, 另针对 PPTP 设置了不同 IP 到子网的路由。
正常情况下:
服务器 NAT ppp0 出去
员工   NAT ppp1 出去
PPTP   ppp2
作者: platinum    时间: 2007-03-10 13:02
原帖由 sxqw 于 2007-3-9 17:04 发表于 21楼  
画图太慢,简单描述一下
用 linux 做网关,内部有三个子网,连两条 ADSL 线路 A 5M 和 B 2M, 公司外的同事还会用 PPTP 连入公司内部特定的服务器,为保证正常对外业务,公司服务器和对外访问25、110走一条线路 ...

慢也得画,有些东西不是靠语言能说清楚的
你上面的语言描述和没说没什么区别,我要的是更具体的东西,包括内网 IP,包括现有策略和配置
作者: mp4    时间: 2007-03-11 13:14
原帖由 sxqw 于 2007-3-6 17:41 发表于 1楼  
在linux RHEL4下使用ADSL,ADSL配置为ppp0端口即ifcfg-ppp0,但有时ADSL又拨起来后 ifconfig 看到的逻辑端口又是ppp1。
怎样才能使ADSL配置为逻辑端口ppp0 拨起的就是ppp0端口而不会变成ppp1 ? 谢谢
linux是 ...


用ppp4.3以上,加一个unit 0
作者: sxqw    时间: 2007-03-12 09:31
标题: 回复 #23 platinum 的帖子
似乎我们讨论的有点复杂了
其实如果能解决“怎样才能使ADSL配置为逻辑端口ppp0 拨起的就是ppp0端口而不会变成ppp1 ?”这个问题,我遇见的麻烦都会迎刃而解。
这个问题简单化的方向
感谢你的热心答复
作者: sxqw    时间: 2007-03-12 09:33
标题: 回复 #24 mp4 的帖子
谢谢,正在按此法测试中。。。。。。
作者: sxqw    时间: 2007-03-12 11:03
谢谢各位的解答
按照 mp4 的解决办法,问题已解决
作者: kevin.tan    时间: 2007-03-12 17:15
原帖由 sxqw 于 2007-3-12 09:33 发表于 26楼  
谢谢,正在按此法测试中。。。。。。


sxgwq兄,你的ppp 4.3 版本的包在哪儿下的呀?貌似官网http://ppp.samba.org/ppp/index.html上只有ppp-2.4.3哦

还是说mp4兄所指的4.3即 ppp-2.4.3 ?
作者: sxqw    时间: 2007-03-13 20:02
没错,是 ppp-2.4.3
作者: kevin.tan    时间: 2007-03-13 20:41
谢谢!谢谢sxqw提示!
作者: sxqw    时间: 2007-03-14 08:31
不用客气!




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2