時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)
此文檔可以說明雙ADSL及多ADSL增加線路的配置過程。
Linux配置多線路ADSL的方法
經(jīng)過一段時(shí)間的觀察,證明運(yùn)行良好,現(xiàn)把設(shè)置過程及方法總結(jié)一下,歡迎指正.
此文檔可以說明雙adsl及多adsl增加線路的配置過程.
實(shí)驗(yàn)環(huán)境:
操作系統(tǒng): RedHat7.3
兩條adsl,長期觀察線路穩(wěn)定,動態(tài)ip,帶寬2M,
三塊網(wǎng)卡: eth0 tulip,接內(nèi)網(wǎng)
eth1 3c59x,接第一條adsl
eth2 8139too,接第二條adsl
ethn xxxx,(如果還有的話....)
目的:用兩條adsl共同上網(wǎng),分擔(dān)負(fù)載,實(shí)現(xiàn)一般的簡單負(fù)載平衡,帶動內(nèi)網(wǎng)上網(wǎng).
1.添加網(wǎng)卡
插入網(wǎng)卡,啟動機(jī)器,如果需要雙線路上網(wǎng),就要三塊網(wǎng)卡了,配置網(wǎng)卡也可以參考其他資料.
配置為找到相應(yīng)的型號模塊,例如:eth2是8139的網(wǎng)卡
[root@kindgeorge root]# vi /etc/modules.conf
alias parport_lowlevel parport_pc
alias eth0 tulip
alias eth1 3c59x
alias eth2 8139too
把新的線路插在eth2上
2.配置adsl
方法一:
(1)運(yùn)行adsl-setup程序,會一步一步的提示你完成配置過程.
創(chuàng)建ppp0和ppp1的撥號配置文件,并保存配置,一般保存在/etc/sysconfig/network-scripts/ifcfg-ppp1
(2)確定/etc/sysconfig/network-scripts/ifcfg-ppp0文件,其中的PIDFILE參數(shù)設(shè)為:
PIDFILE=/var/run/ppp-adsl.pid
修改/etc/sysconfig/network-scripts/ifcfg-ppp1文件,將其中的PIDFILE參數(shù)設(shè)為:
PIDFILE=/var/run/ppp-adsl1.pid
如果你有更多的線路,可以繼續(xù)增加0,1,2,3....等
這是為了使不同的撥好用不同的pid,如果不修改此參數(shù)將無法啟動第二條線路接口?!?/p>
(3)配置文件一般是:
USERCTL=no
BOOTPROTO=dialup
NAME=DSLppp1
DEVICE=ppp1
TYPE=xDSL
ONBOOT=yes
PIDFILE=/var/run/pppoe-adsl1.pid
FIREWALL=NONE
PING=.
PPPOE_TIMEOUT=20
LCP_FAILURE=3
LCP_INTERVAL=20
CLAMPMSS=1412
CONNECT_POLL=6
CONNECT_TIMEOUT=60
DEFROUTE=yes
SYNCHRONOUS=no
ETH=eth2 (對應(yīng)新線路的網(wǎng)卡)
PROVIDER=DSLppp1
USER=isp提供的新用戶名字2
PEERDNS=no
??? 方法二:
(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
修改采用的新接線路的網(wǎng)卡,例如:改ETH=eth1 為ETH=eth2
(3)增加新線路的帳號和密碼. 帳號密碼一般是保存在/etc/ppp/chap-secrets 和pap-secrets
我們只需要在最后增加新的用戶名2和密碼2即可.
/etc/ppp/chap-secrets文件一般是這樣的:
# Secrets for authentication using CHAP
# client server secret IP addresses
"用戶名1" * "密碼1"
"用戶名2" * "密碼2"
"用戶名n" * "密碼n"
3.啟動ppp接口
因?yàn)閍dsl-start 命令缺省只能啟動第一的ppp接口。所以要啟動兩個接口,必須指定配置文件。
#p#副標(biāo)題#e#
可以用:方法一:
ifup ppp0
ifup ppp1
(ifup pppn...)
或方法二:
adsl-start /etc/sysconfig/network-scripts/ifcfg-ppp0
adsl-start /etc/sysconfig/network-scripts/ifcfg-ppp1
(adsl-start /etc/sysconfig/network-scripts/ifcfg-pppn)
4.查看新設(shè)置是否啟動:
方法一:執(zhí)行: ifconfig
出現(xiàn)ppp0 和ppp1 ,并且均得到ip了.說明成功了,結(jié)果象這樣:
ppp0 Link encap:Point-to-Point Protocol
inet addr:218.114.37.137 P-t-P:61.142.110.30 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:165721 errors:0 dropped:0 overruns:0 frame:0
TX packets:123673 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:157324193 (150.0 Mb) TX bytes:14068892 (13.4 Mb)
ppp1 Link encap:Point-to-Point Protocol
inet addr:218.114.35.62 P-t-P:61.142.110.30 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:560055 errors:0 dropped:0 overruns:0 frame:0
TX packets:439711 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:530025378 (505.4 Mb) TX bytes:80895162 (77.1 Mb)
方法二: 執(zhí)行ip高級命令: ip link ls
也可以檢驗(yàn)ppp0和ppp1,結(jié)果象這樣:
1: lo: mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: mtu 1500 qdisc pfifo_fast qlen 100
link/ether 00:50:bf:07:4e:32 brd ff:ff:ff:ff:ff:ff
3: eth1: mtu 1500 qdisc pfifo_fast qlen 100
link/ether 00:01:02:9a:31:b9 brd ff:ff:ff:ff:ff:ff
4: eth2: mtu 1500 qdisc pfifo_fast qlen 100
link/ether 00:e0:4c:79:44:71 brd ff:ff:ff:ff:ff:ff
268: ppp1: mtu 1492 qdisc pfifo_fast qlen 3
link/ppp
273: ppp0: mtu 1492 qdisc cbq qlen 3
link/ppp
方法三: 用命令測試反應(yīng)
ping -I ppp0 202.96.134.133 (測試ppp0的線路狀況)
ping -I ppp1 202.96.134.133 (測試ppp1的線路狀況)
ping -I ppp2 ......n (如果還有多條的話)
???? 5.如果單單是要實(shí)現(xiàn)鏈路負(fù)載平衡,讓ppp0和ppp1分擔(dān)負(fù)載,那么我們象以下設(shè)置一下配置:
(1)啟動路由,允許轉(zhuǎn)發(fā)echo 1 > /proc/sys/net/ipv4/ip_forward
(2)進(jìn)行偽裝:
iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o ppp0 -j MASQUERADE
iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o ppp1 -j MASQUERADE
iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o pppn -j MASQUERADE (如果還有多條的話)
(3)修改網(wǎng)關(guān)
ip route replace default scope global nexthop dev ppp0 weight 1 nexthop dev ppp1 weight 1
說明: 用replace的原因是當(dāng)原來沒有網(wǎng)關(guān)時(shí)會增加這個網(wǎng)關(guān),當(dāng)已經(jīng)存在網(wǎng)關(guān)時(shí),會修改原來的網(wǎng)關(guān).
用add 也可以,但是當(dāng)已經(jīng)存在默認(rèn)網(wǎng)關(guān)時(shí)就要先delete再add.
兩個weight 1的意思是這兩條鏈路的權(quán)值是相等的,兩條鏈路承擔(dān)的網(wǎng)絡(luò)流量是相等的。
有一點(diǎn)是需要說明的,因?yàn)槁酚杀硎腔诰彺娴?,所以在?shí)際中兩條鏈路并不能100%的平分流量
nexthop NEXTHOP 設(shè)置多路徑路由的下一跳地址。NEXTHOP比較復(fù)雜,它的語法和以下高層參數(shù)類似:
via ADDRESS--表示下一跳路由器;
dev NAME--表示輸出設(shè)備;
weight NUMBER--在多路由路徑中,這個元素的權(quán)重。表示相對帶寬或者服務(wù)質(zhì)量。
如果你有多條線路,那么繼續(xù)在其中增加 nexthop dev ppp2(ppp3......)即可
(4) 刷新路由
ip route flush cache
6.即時(shí)檢查數(shù)據(jù)的方向
用tcpdump 分別監(jiān)察兩條線路,用下面命令:
tcpdump -i ppp0
tcpdump -i ppp1
tcpdump -i ppp2......n (有多條的話)
7.為了每次啟動時(shí)自動啟動,把命令寫在啟動腳本里面,在 /etc/rc.local 后面增加:
ifup ppp0
ifup ppp1
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o ppp0 -j MASQUERADE
iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o ppp1 -j MASQUERADE
ip route replace default scope global nexthop dev ppp0 weight 1 nexthop dev ppp1 weight 1
ip route flush cache
結(jié)果:運(yùn)行數(shù)月,效果穩(wěn)定良好。
上網(wǎng)會明顯加快,為何呢,因?yàn)閮蓷l線路分?jǐn)偭素?fù)載.例如,內(nèi)網(wǎng)80人同時(shí)上網(wǎng), 如果網(wǎng)絡(luò)是一條2M的adsl,那么整條線路都擁擠,擠得死死的,每人分得的帶寬可能只有30k.大家都會明顯感覺上網(wǎng)很慢。
如果增加多一條線路,那么兩條2M共同分?jǐn)倱頂D程度,這樣,可能每人分得的帶寬就會變成6
關(guān)鍵詞標(biāo)簽:Linux,ADSL
相關(guān)閱讀
熱門文章 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 Tomcat9.0如何安裝_Tomcat9.0環(huán)境變量配置方法 多種操作系統(tǒng)NTP客戶端配置 Linux操作系統(tǒng)修改IP
人氣排行 Linux下獲取CPUID、硬盤序列號與MAC地址 dmidecode命令查看內(nèi)存型號 linux tc實(shí)現(xiàn)ip流量限制 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 linux下解壓rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 關(guān)機(jī)、重啟、注銷 命令 查看linux服務(wù)器硬盤IO讀寫負(fù)載