TEL:
centos下pppoe配置多路 ADSL 多拨
| 发布时间: 2021-07-01 15:51:13 | 4611 次浏览
centos下pppoe配置多路 ADSL 多拨
centos下pppoe配置多线路ADSL

移除NetworkManager安装rp-pppoe

第一步 搜寻pppoe可以找到pppoe相关套件,我们要使用的是rp-pppoe。

yum search pppoe

第二步 使用yum安装rp-pppoe。

yum install rp-pppoe -y

第三步 移除NetworkManaget。

yum erase NetworkManager

第四步 开始配置PPPoE连线。

pppoe-setup

第五步 输入您的连线帐号,Hinet的用户,帐号类似这样 xxxxxxxx@hinet.net 或 xxxxxxxx@ip.hinet.net不等。

第六步 输入您的网路介面卡,预设是eth0,基本上都是使用预设的,除非您的伺服器安装了多张网路介面卡,按Enter继续。

第七步 这个步骤请输入no或直接按下Enter,否则如果您长时间连线,连线会被自动中断。

第八步 设定主要DNS伺服器,使用Google Public DNS,请输入8.8.8.8。

第九步 次要DNS伺服器,请输入8.8.4.4。

第十步 请输入连线密码。

第十一步 请重复输入连线密码。

第十二步 ㄜ…这里输入no就好了,不用使用一搬使用者权限做连线。

第十三步 设定防火墙,输入0就好了,如果有特殊需求在额外设定吧。

第十四步 是否开机自动拨号,请输入yes。

第十五步 确认资料无误?是的话请输入y,重新设定请按Ctrl+C或输入n。

第十六步 最后!执行连线动作,连线成功不会有讯息出现!

/sbin/ifup ppp0

操作指令 :

结束连线 -> /sbin/ifdown ppp0

查看状态 -> /sbin/pppoe-status

 

配置多线路:       (1)直接拷贝

  cp /etc/sysconfig/network-scripts/ifcfg-ppp0 /etc/sysconfig/network-scripts/ifcfg-ppp1

  (2)修改其中的ppp0为ppp1,

  修改PIDFILE=/var/run/pppoe-adsl.pid 为PIDFILE=/var/run/pppoe-adsl1.pid

  修改采用的新接线路的网卡,例如:改ETH=eth1 为ETH=eth2

  (3)增加新线路的帐号和密码. 帐号密码一般是保存在/etc/ppp/chap-secrets 和pap-secrets

  我们只需要在最后增加新的用户名2和密码2即可.

  /etc/ppp/chap-secrets文件一般是这样的:

  # Secrets for authentication using CHAP

  # client serversecret IP addresses

  "用户名1" * "密码1"

  "用户名2" * "密码2"

  "用户名n" * "密码n"

启动脚本

 #!/bin/bash
interfaces=('ppp0' 'ppp1')
tables=('100' '101')
#set -x
index=0
for interface in ${interfaces[@]}
do
#sleep 60s
 echo "`date` restarting interface $interface ..."
 /sbin/ifdown $interface
 /sbin/ifup $interface
 _ip=`/sbin/ip addr show $interface | grep peer | awk '{print $2}'`
 _gateway=`/sbin/ip addr show $interface | grep peer | awk '{print $4}' | sed 's/\/32//'`
 /sbin/ip route flush table ${tables[index]}
 /sbin/ip route add default via $_gateway dev $interface src $_ip table ${tables[index]}
 /sbin/ip rule show | grep "lookup ${tables[index]}" | awk '{print $3}' | xargs -I{} /sbin/ip rule del from {} table ${tables[index]}
 /sbin/ip rule add from $_ip table ${tables[index]}
 echo "`date` route table ${tables[index]}"
 /sbin/ip route list table ${tables[index]}
 ((index+=1))
sleep 5s
done

查看新设置是否启动:

  方法一:

  执行: ifconfig

  出现ppp0 和ppp1 ,并且均得到ip了.说明成功了,结果象这样:

        ppp0      Link encap:Point-to-Point Protocol 
          inet addr:10.2.18.208  P-t-P:10.2.16.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:7 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:366 (366.0 b)  TX bytes:366 (366.0 b)
        ppp1      Link encap:Point-to-Point Protocol 
          inet addr:10.2.40.164  P-t-P:10.2.32.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:13 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:858 (858.0 b)  TX bytes:858 (858.0 b)
       方法二:

  执行ip高级命令: ip link ls

  也可以检验ppp0和ppp1,结果象这样:

       38: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast state UNKNOWN qlen 3
       link/ppp
       39: ppp1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast state UNKNOWN qlen 3
       link/ppp
     方法三:

  用命令测试反应

  ping -I ppp0 219.141.136.10 (测试ppp0的线路状况)

  ping -I ppp1 219.141.136.10 (测试ppp1的线路状况)

  ping -I ppp2 ......n (如果还有多条的话)