[原]Linux ADSL家庭组网实现详解[2]

[入库:2005年9月19日] [更新:2007年3月24日]

本文简介:

    其中的HWaddr 00:40:05:40:C5:57就是设备eth0的MAC,将它和nic.txt中的MAC对比,就可以确定eth0,eth1分别接的是哪个网络。如果你的网卡没有设置为启动时激活,那么你可能需要运行如下命令:

[code:1:5ef37b98d0]ifup eth0
ifup eth1[/code:1:5ef37b98d0]

    来启动网卡,这个命令似乎是Redhat才有的,其他的发行版不知道怎么启动,还望各位告知。


    通过对比发现,我的eth0接的是局域网,eth1接的ADSL modem。

[size=18:5ef37b98d0]3.2局域网配置 [/size:5ef37b98d0]   
    
    现在配置eth0,执行如下命令

[code:1:5ef37b98d0]vi /etc/sysconfig/network-scripts/ifcfg-eth0[/code:1:5ef37b98d0]

    修改其BOOTPROTO为static,ONBOOT为yes;并配置好IPADDR,NETMASK,NETWORK,这些配置按照windows中的配置即可,也就是说把nic.txt中的相关数据抄过来就可以了。

    我的ifcfg-eth0如下:

[code:1:5ef37b98d0]# VIA Technologies|VT6105 [Rhine-III]
DEVICE=eth0
BOOTPROTO=static
BROADCAST=210.31.47.255
HWADDR=00:;40:;05:;40:;C5:;57
IPADDR=210.31.34.2
NETMASK=255.255.240.0
NETWORK=210.31.32.0
ONBOOT=yes
TYPE=Ethernet[/code:1:5ef37b98d0]
    请根据自己的情况做相应修改。


[size=18:5ef37b98d0]3.3 eth1的配置[/size:5ef37b98d0]

    现在我们来配置eth1,根据rp-pppoe的说明档,eth1不能设置为启动时激活,不能给它分配IP。因此修改如下:

[code:1:5ef37b98d0]vi /etc/sysconfig/network-scripts/ifcfg-eth1[/code:1:5ef37b98d0]

    修改其中的BOOTPROTO为dhcp,ONBOOT=no

    我的ifcfg-eth1如下:

[code:1:5ef37b98d0]# Linksys|Network Everywhere Fast Ethernet 10/100 model NC100
DEVICE=eth1
BOOTPROTO=dhcp
HWADDR=00:;00:;E8:;11:;26:;C5
ONBOOT=no
TYPE=Ethernet
DHCP_HOSTNAME=Cloud.Crop[/code:1:5ef37b98d0]
    你可以根据自己的情况做相应的修改。


[size=18:5ef37b98d0]3.4局域网连通测试[/size:5ef37b98d0]

    接下来,我们先测试一下局域网是否通了,在server和client上以root运行如下命令:

[code:1:5ef37b98d0]service network restart[/code:1:5ef37b98d0]

    之后,双机就应该可以互相ping通了,如果不行,请再仔细检查一下上面的设置,网络不通的原因很多,但是如果你已经按我说的在server windows,client linux的情况下组网成功,那么至少硬件没问题,软件原因导致的网络不通就不在本文讨论范围之内了。



[size=24:5ef37b98d0]4.开始安装[/size:5ef37b98d0]

首先要确定你的adsl modem可用,这就是为什么要先在windows下拨号上网,再进入linux的原因,要是你的设备原本就不能正常工作,你在linux下怎么弄,也上不了网的。

整个安装过程大概分为下面几步
1、配置内核
2、编译rp-pppoe客户端和pppd
3、配置pppd

[size=18:5ef37b98d0]4.1配置内核[/size:5ef37b98d0]

要想使用linux下的pppoe拨号服务,我们需要内核里有PPP支持。如果你已经在内核中配置了PPP,请跳过这一段,如果你不确定,可以使用如下命令查看

       [code:1:5ef37b98d0]grep CONFIG_PPP /usr/src/linux/.config[/code:1:5ef37b98d0]

如果在反馈的信息中有

 CONFIG_PPP=y  或者 CONFIG_PPP=m

那么你的内核是支持PPP。否则的,你可能要编译一下内核了。

实际上,如果你使用的是比较新的发行版比如Redhat linux 9以上,那么内核应该是编译了PPP支持的。

NOTE:我觉得应该有更好的方法来检查是否有PPP支持,因为某些版本的linux可能不带.config文件,如果lsmod又看不见编译进内核的,不知道各位有什么好的方法?

[size=18:5ef37b98d0]4.2编译rp-pppoe客户端和pppd[/size:5ef37b98d0]

先安装pppd

[code:1:5ef37b98d0]tar -zxf ppp-2.4.1-15.tar.gz

cd ppp-2.4.1-15
./configure && make && make install[/code:1:5ef37b98d0]

NOTE:可能你的机器上已经安装了pppd,你可以用rpm -qa | grep ppp来查看是否有ppp-2.xxx-xx的信息。如果有就不用再安装了。

现在安装rp-pppoe客户端

[code:1:5ef37b98d0]tar -zxf rp-pppoe-3.5.tar.gz
cd rp-pppoe-3.5
./configure && make && make install[/code:1:5ef37b98d0]

NOTE:rp-pppoe客户端提供了快速安装的功能,./go这个是字符界面的,./go-gui这个是gui界面的,非常容易使用,不多说。

[size=18:5ef37b98d0]4.3配置rp-pppoe客户端[/size:5ef37b98d0]


配置方法分为手动和自动,强烈推荐使用自动配置的方式,即以root运行adsl-setup,如果无法连接再手动检查各个配置文件。

[code:1:5ef37b98d0]adsl-setup[/code:1:5ef37b98d0]

然后按着提示上的做就行了,这部分在本版精华已经讲得颇为详细了,本不想多说,但是总是有些人以自己“不懂英文“为名在下面JJYY,所以也在这里顺带提提。

[code:1:5ef37b98d0][root@Cloud root]# adsl-setup
 
Welcome to the ADSL client setup.  First, I will run some checks on
your system to make sure the PPPoE client is installed properly...
                                                                                

本文关键:[原]Linux ADSL家庭组网实现详解
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top