Linux ADSL拨号上网--鲁尼思的港湾

来源:百度文库 编辑:神马文学网 时间:2024/04/28 07:05:33

Linux ADSL拨号上网- -

                                      


我的解决方案 for RedHat 7.3
 
    用linux上网已经是N多年前在linuxeden上混的时候干的活儿了,当时能用来connecting internet的东西也不外乎是小猫咪(modem)。再不然就是DDN专线,不过那是网吧用的东西,我还真的没接触过咧。基于modem的上网在linux下的技术真的是太成熟了,本身GUI(图形界面)下的KDE就有一个叫KPPP的软件,可视化、简单化比起windows有过之而无不及,根本没有什么意思。
    这些年洪水是少了,但非典来了,WTO来了,google来了(FT,google早就来了),数码来了,海啸来了,宽带来了,春运也来了......哈哈。本来linux下ADSL拨号上网的方案,在google上用关键字"pppoe linux"一搜一大箩的,可朋友们还是要问我,这有不行那又不行的。看来真的得不解决方案写下来,踩在巨人的肩膀上,权当BLOG吧。
    但我还是很懒的,比如我会用google。
    Google告诉我,在http://www.roaringpenguin.com这个站点里,有个为全世界所有小红帽的粉丝ADSL时候PPPOE的软件,叫rp-pppoe-3.2-1.i386.rpm,看什么看?下过来,然后# rpm -Uvh rp-pppoe-3.2-1.i386.rpm就是了!
NOTE: 这里插一句,有些XD会发现无法安装,系统提示ppp >=2.3.7 is needed by rp-pppoe-3.5-1或是别的。这是RPM安装包依赖性报错,它的意思就跟windows下有些游戏必须先在系统安装DirectX 9.0才能玩一个道理。系统提示你必须安装版本高于或等于2.3.7的PPP才能正确安装这个RPM包。这还不简单,拿出你的小红帽linux安装光盘,在光盘里有一个叫ppp-2.3.7-xxx.x-i386.rpm的包,依样画葫芦,装上就好了。
    安装完后,你可以#ls /sbin/adsl* ,你会发现系统在/sbin下会多了几个可执行的文件"adsl-start"(开始)"adsl-connect"(连接)"adsl-stop"(停止)"adsl-status"(状态)"adsl-setup"(配置)。没错,拨号程序已经装好啦(小窍门是,你可以用命令whereis adsl看到意外的惊喜)!
记得用root用户登陆啊,设置拨号程序要在字符界面(console)上了,请键入[root@localhost root]# adsl-setup,然后按要求键入如下内容。
Enter your PPPoE user name:
输入你的宽带账号完整的用户名,广州点心的ADSL用户的用户名长的样子是gzDSL12345678@163.gd,而中国连捅宽带用户的用户名则是长得i162b1234567@gz.unicom ,记得写全。
  Enter the Ethernet interface connected to the ADSL modem
  For Solaris, this is likely to be something like /dev/hme0.
  For Linux, it will be ethn,swheres‘n‘ is a number.
  (default eth0): 这是叫你输入连接的网卡的名字,一般选择默认就可以(按一下回车)。
  Enter the demand value (default no): 键入"no"
  Enter the DNS information here: 输入DNS服务器地址,如果你输入"server",这表示使用宽带服务提供商会为你自动提供的DNS服务器IP地址。(严格区分大小写!)
  Please enter your PPPoE password: 输入宽带账号的密码。
  Please confirm your pppoe password: 再次输入刚才宽带账号的密码。
  Choose a type of firewall (0-2): 输入 0 ,表示不使用防火墙。
  Accept these settings and adjust configuration files (y/n)? 如果你输入的信息正确,输入y ,完成配置,否则输入n重新设置。
    很多人认为y完后是生成pppoe.conf文件的,其实不然。这就是为什么很多XD会在BBS上狂问,为什么/etc/ppp/里没有pppoe.conf文件?因为我们根本不需要利用pppoe命令来运行PPPOE拨号,而是利用adsl-connect来调用pppd进程。事实上,这里是有质疑的,由于我的机器用的是连捅的宽带,而在其上的pppd是出现了问题的。
[root@localhost root]#adsl-connect
Using interface ppp0
Connect: ppp0 < - - > /dev/pts/0
Remote message: Welcome to use Quidway ROUTER, Huawei Tech. 
Local IP address 220.198.xxx.xxx
Remote IP address 211.198.xxx.xxx
Primary DNS address 211.95.193.97
Secondary DNS address 202.96.128.68
 
 
Modem hangup  // 请注意这一行,它的意思是"调制解调器已经挂起(没有响应)"的意思
Connection terminated.// 连接中断
Connect time 1.7 minutes.
Sent 174 byte, received 246 byte.
Using interface ppp0
Connect: ppp0 < - - > /dev/pts/0
LCP: timeout sending Config-Requests
Connection terminated.
Pppoe: timeout waiting for PADS packets.
Using interface ppp0
Connect: ppp0 < - - > /dev/pts/0
LCP: timeout sending Config-Requests
Connection terminated.
Pppoe: timeout waiting for PADS packets.
Using interface ppp0
Connect: ppp0 < - - > /dev/pts/0
LCP: timeout sending Config-Requests
Connection terminated.
Pppoe: timeout waiting for PADS packets.
Using interface ppp0
Connect: ppp0 < - - > /dev/pts/0
LCP: timeout sending Config-Requests
Connection terminated.
Pppoe: timeout waiting for PADS packets.
然后被我Ctrl+ C 中断了。这时候我抱着试一试的态度玩了一下:

[root@localhost root]#ping www.163.com

ping: Unkown host www.163.com

证明网络是不具有DNS功能的。然后我又试了一下其他的命令:

[root@localhost root]#adsl-start
[root@localhost root]#ifup eth0
[root@localhost root]#/etc/init.d/network restart
然后再行ping www.163.com的命令,居然成功了地解析了,而且非常稳定有数据包回应!然后我打开一个GUI,用里头的Mozilla浏览web,灰常爽的说!
现在是2005年2月2日星期三的凌晨1点,夜了,睡先~。