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
第五步 输入您的连线帐号。
第六步 输入您的网路介面卡,预设是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"
方法二:
重复执行pppoe-setup,选择不同的网卡和对应的账号密码配置。配置完成后,修改PIDFILE,默认生成的PIDFILE都是相同的,需要用0,1,2...对应区分。
启动脚本
#!/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 (如果还有多条的话)
参考1:https://www.cnblogs.com/wayde-Z/p/6249439.html
参考2:https://www.linuxidc.com/Linux/2015-01/111600.htm