当前位置:操作系统 > Unix/Linux >>

RedHat7.2下ADSL双网卡共享上网实战

本文可以随意转贴,但是请务必注明出处: http://www.toplee.com/?cat_id=17&art_id=122

  前一段Michael在

  网通申请开通了包月的ADSL,于是开始了Michael网上真正冲浪的日子,这些年在IT圈里混,家里电脑加起来都有三台了,加上室友的一台笔记本和一台PC,一共有5台电脑了,于是开始琢磨怎么能让这些电脑都上网。

  在网上找了一阵,从一些坛子上看到有些地方有不限制一个帐户多次拨号的情况,于是我也抱着试试看的想法动手试我家的ADSL,结果一试才发现家里的 ADSL居然也可以多次拨号,嘿,这下可爽了。我买了一个8口的HUB,把ADSL猫接到HUB的UP Link口上,然后别的机器都用网线接到HUB上,分别在各个机器上都安装了ADSL拨号软件,结果每台电脑都可以独立拨号上去,并且各自的速度都是 512Kbps,实在是爽!有ADSL的朋友不妨也试试看运气!

  结果好日子没有持续多久就发生噩梦了,昨天回到家和往常一样打开HUB和ADSL猫的电源,结果发现无论怎么试都只能拨通一台机器,后来经过确认得知我们这个区的电话局也做了限制了,这下没办法了,只能开始折腾代理服务器了。

  历史原因留下来家里有一台比较旧的电脑,目前闲置不用,配置为赛扬366、内存64MB、硬盘2.5G、无显示器和键盘鼠标、双网卡,正好用来做代理服务器,经过一晚上的折腾,总算是搞好了,现在大家虽然上网速度慢了点,不过也还算满意,下面就是整个的安装配置过程。

  1、确定实现目标:

  我们要实现代理服务器一块网卡和ADSL猫连接,另外一个和HUB连接,在服务器上设置NAT,并配置防火墙和DHCP,内网的其他电脑使用自动获取IP地址方式,并通过代理服务器共享上网。

  2、服务器安装和网络配置:

  由于当时手里只有RedHat Linux 7.2 的安装光盘,于是就决定安装RedHat7.2作为代理服务器的系统,安装过程不用详细说明了,我选择了最小安装方式,自定义选择了pppd服务、防火墙、rp-pppoe包安装。

  系统安装好以后,开始配置两个网卡,两块网卡分别为eth0和eth1,我选择eth0连接ADSL猫,eth1连接内网。ADSL拨号上网无需设置eth0的ip地址,下面是我的网络配置文件设置情况

  /etc/sysconfig/networks文件:

  NETWORKING=yes

  HOSTNAME=proxy

  FORWARD_IPV4="yes"

  GATEWAY="ppp0"

  GATEWAYDEV=""

  /etc/sysconfig/network-scripts/ifcfg-eth0文件:

  DEVICE=eth0

  BOOTPROTO=static

  ONBOOT=yes

  /etc/sysconfig/network-scripts/ifcfg-eth1文件:

  DEVICE=eth1

  BROADCAST=192.168.0.255

  IPADDR=192.168.0.1

  NETMASK=255.255.255.0

  NETWORK=192.168.0.0

  ONBOOT=yes

  接下来设置ip转发和打开核心对ip转发的支持,打开/etc/rc.local文件,加入下面三行

  echo 1 > /proc/sys/net/ipv4/ip_forward

  ipchains -A forward -s 192.168.0.0/24 -d 0/0 -j MASQ

  adsl-start &

  最后一行设置系统在启动时自动连接ADSL,这在后面有说明。

  3、ADSL配置

  配置好服务器的基本环境后,开始进行ADSL拨号设置,Michael在设置的时候发现了一个很奇怪的问题,就是系统中怎么都找不到adsl- setup命令,别的如adsl-start 、adsl-connect等都有,这让我很纳闷。实在没有办法,我去openbsd.org下载了redhat7.3的rp-pppoe-3.5- 1.i386.rpm 包,然后用下面的命令重新安装了rp-pppoe包

  #rpm -Uhiv --replacepkgs rp-pppoe-3.5-1.i386.rpm

  一看一下就好了,呵呵,不知道7.2带的包到底有什么毛病,也没有功夫仔细研究了。

  接下来开始运行adsl-setup来设置ADSL,下面是配置过程

  #/usr/sbin/adsl-setup

  当出现

  >>> Enter your PPPoE user name :

  输入ADSL帐号的用户名

  当出现

  >>> Enter the Ethernet inte易做图ce connected to the ADSL modem

  For Solaris, this is likely to be something like /dev/hme0.

  For Linux, it will be ethn, where 'n' is a number.

  (default eth0):

  输入 eth0 ,这是ADSL相连的网卡的名字

  当出现

  >>> Enter the demand value (default no):

  输入 no

  当出现

  >>> Enter the DNS information here:

  输入 "server" ,这表示使用ADSL拨号自动获得的DNS服务器IP地址

  当出现

  >>> Please enter your PPPoE password:

  输入ADSL帐号的密码

  当出现

  >>> Choose a type of firewall (0-2):

  输入 0 ,不使用防火墙

  当出现

  >>> Accept these settings and adjust configuration files (y/n)?

  如果输入的信息正确,输入 y ,完成配置,否则,输入 n 重新输入。

  这样就完成了ADSL的配置,这时试着运行一下adsl-start,正确的话应该可以看到connected的信息,如果有问题试着看看/var/log/message的信息,然后重新进行配置。

  运行adsl-start成功连接后,运行ifconfig -a看看网络设备信息,应该可以看到ppp0的信息,这就是ADSL建立的连接,应该可以看到电信分配的IP地址之类的信息。

  此时,Michael尝试设置了其他的电脑的ip信息,比如设置了另外一台接在HUB上的笔记本的ip地址为192.168.0.128,网关设置为192.168.0.1,打开ie上网,呵呵,大功告成!

  4、配置DHCP服务

  为了让家里的网络环境更方便,于是开始在代理服务器上配置DHCP服务,下面是DHCP的简单配置过程;

  从光盘或者网上找到dhcp-2.0pl5-8.i386.rpm和dhcpcd-1.3.22pl1-7.i386.rpm两个包,用rpm -hiv 安装。

  拷贝/usr/share/doc/dhcp-2.0pl5/dhcpd.conf.sample 文件到 /etc/dhcpd.conf 然后根据自己具体情况修改部分配置信息,下面是Michael的dhcpd.conf文件内容:

  subnet 192.168.0.0 netmask 255.255.255.0 {

  # --- default gateway

  option routers 192.168.0.1;

  option subnet-mask 255.255.255.0;

  option nis-domain "toplee.com";

  option domain-name "toplee.com";

  option domain-name-servers 202.106.196.115,202.106.196.152,202.96.199.133;

  option time-offset -18000; # Eastern Standard Time

  # option ntp-servers 192.168.1.1;

  # option netbios-name-servers 192.168.1.1;

  # --- Selects point-to-point node (default is hybrid). Don't change this unless

  # -- you understand Netbios very well

  # option netbios-node-type 2;

  range dynamic-bootp 192.168.0.128 192.168.0.255;

  default-lease-time 21600;

  max-lease-time 43200;

  # we want the nameserver to appear at a fixed address

  host ns {

  next-server ns.toplee.com;

  hardware ethernet 00:03:0F:F8:60:22;

  fixed-address 192.168.0.1;

  }

  }

  基本上你直接拷贝上面的内容就可以了。

  然后运行/etc/init.d/dhcpd start 启动dhcp服务(另外可以在setup里面设置启动的时候自动运行dhcp服务)

  一切ok,设置内网其他的机器使用自动获取就ok了!你可以通过查看/var/lib/dhcp/dhcpd.leases 文件查看客户机器租用ip的情况。

  好了,有点晚了,Michael就写到这里,基本上都说清楚了,大家有什么问题或者发现Michael有些什么设置不够好的都可以告诉我!

  大家相互交流,共同进步!

  本文可以随意转贴,但请注明出处 :http://www.toplee.com/?cat_id=17&art_id=122本文来自:http://www.xiaoyaxiao.com/871.html
发表您的高见!
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,