ROS線NTH均衡十_第1頁
ROS線NTH均衡十_第2頁
ROS線NTH均衡十_第3頁
ROS線NTH均衡十_第4頁
ROS線NTH均衡十_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、ROS線NTH均衡十 如今ROS在吧當(dāng)中的應(yīng)用普及程度非常高原因就是用這軟件做個由太了我曾經(jīng)在心里盤算過如果還能找到全新3的主板和CU那么配一臺全新超穩(wěn)定的由僅需硬件成本300之內(nèi)而加上普遍應(yīng)用的多條ADSL疊加后總成本不過1千之內(nèi)而這僅1千的成本卻能讓一家小型吧擁有10M以上的寬帶絡(luò)費卻只有光纖的1/4左右。我想就是憑著在各方面都能省的特點軟由風(fēng)靡中國吧行業(yè)是理所應(yīng)當(dāng)?shù)氖?。曾?jīng)有一個在縣城里開了一家70臺機器吧的朋友問過我他說:“現(xiàn)在我們縣城拉一條4M光纖每月要交2千以上現(xiàn)在我們這ADSL拉一條100多你能不能幫我做一個8條ADSL疊加的方法啊這樣算來每條ADSL有2M左右的下行和512K上

2、行8條加起來就有十幾M下載和4M的上傳應(yīng)該足夠我的吧用了而且這樣每個月費用才1千以內(nèi)如果能做就太適合吧了。”聽了朋友說完我發(fā)現(xiàn)已經(jīng)有很多人在開發(fā)這種自制的8WAN口軟件由器了。當(dāng)然如果做到8條線疊加不太容易因為一般很少有主板能插8塊卡的但是5-6條線應(yīng)該問題不大。以下我將以實例操作為大家詳解如何在ROS2.9版本當(dāng)中配置多線軟由也許城市當(dāng)中的大型吧根本用不到這些技術(shù)但在一些鄉(xiāng)鎮(zhèn)當(dāng)中尤其是管朋友自己回家開一間小吧卻用處很大而且目前這種技術(shù)還是很值錢的聽說找人做一臺這樣的由器單軟件成本就要1千以上以下以雙線為例配置整體過程然后再解釋其中道理自然就可以實現(xiàn)“多線均衡負(fù)載”這種由技術(shù)了。另外講一些題外

3、話目前配置多WAN軟由很流行學(xué)會了這個可以算得上一門手藝到哪都有飯吃了。 平臺介紹:搭建軟由首先得用大家都熟悉的ROS2.9是基于LINUX平臺的由軟件開源而且目前在吧業(yè)主應(yīng)用普遍用這個軟件也有另一個好處就是方便學(xué)習(xí)因為用的人多所以當(dāng)你遇到問題時可以求助的途徑就多。安裝軟件和配置以及連接WINBOX過程在這里就省略了總之在這些都完成后才可以進(jìn)行。硬件方面板載卡加上兩塊CI卡裝完驅(qū)動后再進(jìn)系統(tǒng)最好其中板載做內(nèi)關(guān)兩塊CI卡接ADSL。環(huán)境介紹到此當(dāng)然ROS一些由表和其他基本配置都要做好才能開始以下關(guān)于ADSL線均衡負(fù)載的配置過程。原理介紹:如何實現(xiàn)多線ADSL均衡負(fù)載然后實現(xiàn)多條ADSL速疊加全靠

4、ROS靈活的策略由來實現(xiàn)實現(xiàn)的原理就是在每一次數(shù)據(jù)連接過程中將每個數(shù)據(jù)包分別打上一個標(biāo)記例如我們有2條ADSL那就將數(shù)據(jù)包分別打上“1”和“2”的標(biāo)記然后將數(shù)據(jù)放入各地的池內(nèi)在由過程中每個池走自 己的線這樣就可以實現(xiàn)負(fù)載均衡了也就是你一個人上卻同時使用兩條ADSL線因為你的數(shù)據(jù)是分別走兩條線的。明白了這個道理就可以明白如果接3條線或更多的線就把數(shù)據(jù)包分別打上“1、2、3”等標(biāo)記然后讓他們分別從不同的線出去這樣就可以實現(xiàn)多線負(fù)載均衡等于每位用戶都可以享受到3根線的速度從而實現(xiàn)高速絡(luò)。以下配置過程分為WINBOX設(shè)置過程和命令行設(shè)置過程兩部分是相同的設(shè)置之所以分為兩部分同時講解就是想讓大家擺脫WI

5、NBOX因為命令行設(shè)置才能做出更復(fù)雜更加適合自己的由策略。第一步設(shè)置OE拔號:外(WAN1,WAN2)兩個卡添加oe client第一個命名為ADSL1 并且加上拔號的用戶名和密碼第二條命名為ADSL2 同時加上拔號的用戶名和密碼這里要注意把Add Default Route 去掉. 如圖就是填好ADSL賬號和密碼如下圖:以下是用命令行配置ADSL帳號和密碼的過程相對來說比較易懂:#設(shè)置ADSL拔號 / interface oe-client add name="oe-out1" interface=wan1 user="11111&

6、;quot; assword="111111" add-default-route=no disabled=no/ interface oe-client enable oe-out1/ interface oe-client add name="oe-out2" interface=wan2 user="22222" assword="22222" add-default-route=no disabled=no/ interface oe-clie

7、nt enable oe-out2/ interface oe-client add name="oe-out3" interface=wan3 user="33333" assword="333333" add-default-route=no disabled=no/ interface oe-client enable oe-out3/ interface oe-client add name="oe-out4" interface=wan4 u

8、ser="44444" assword="44444" add-default-route=no disabled=no/ interface oe-client enable oe-out4第二步標(biāo)記連接和由:配置MANGLE來實現(xiàn)為每個數(shù)據(jù)包做標(biāo)記并配置相應(yīng)的由信息這里的由信息指的就是“池”然后在后面的由表當(dāng)中實現(xiàn)將“池”中的包分配到相應(yīng)的線當(dāng)中。下圖兩個ADSL線的配置過程:以下是命令行下配置過程詳細(xì)解釋第一條就是每隔一個包建立一個新的會話并用“1”做標(biāo)記因此所有屬于同一會話的連續(xù)的數(shù)據(jù)包將被放到標(biāo)記為1的連接中注意

9、我們將這些數(shù)據(jù)包傳遞給第二條和第三條規(guī)則(assthrough=yes)。第二條規(guī)則在rerouting鏈表將所有標(biāo)記屬于“1”的連接放入routing mark的“1”標(biāo)記中并將以上連接在此停止處理。而第二條規(guī)則當(dāng)中則是每隔一個包建立一個新的會話并用“1”做標(biāo)記其他相就都處理成以2為標(biāo)記的連接和池中就這樣將所有包連續(xù)不斷的處理并做標(biāo)記為由做好前期準(zhǔn)備。/ i firewall mangle add chain=rerouting in-interface=lan connection-state=new nth=3,4,0 action=mark-connection new-connect

10、ion-mark=1 assthrough=yes add c hain=rerouting in-interface=lan connection-mark=1 action=mark-routing new-routing-mark=1 assthrough=no / i firewall mangle add chain=rerouting in-interface=Local connection-state=new nth=3,4,1 action=mark-connection new-connection-mark=2 assthrough=yes add chain=rerou

11、ting in-interface=Local connection-mark=2 action=mark-routing new-routing-mark=2 assthrough=no add chain=rerouting in-interface=Local connection-state=new nth=3,4,2 action=mark-connection new-connection-mark=3 assthrough=yes add chain=rerouting in-interface=Local connection-mark=1 action=mark-routin

12、g new-routing-mark=3 assthrough=no / i firewall mangle add chain=rerouting in-interface=Local connection-state=new nth=3,4,3 action=mark-connection new-connection-mark=4 assthrough=yes add chain=rerouting in-interface=Local connection-mark=4 action=mark-routing new-routing-mark=4 assthrough=no 第三步配置

13、關(guān)規(guī)則:因為是2條ADSL所以要加2條規(guī)則分別對應(yīng)兩個oe獲得的如果你們自己設(shè)就要先獲得然后在這里設(shè)好規(guī)則特點是address=network=broadcast這樣設(shè)置的目的是讓ros能夠根據(jù)這里所設(shè)的關(guān)分別由并且在自動修改I和關(guān)的腳本當(dāng)中還可以實現(xiàn)斷線重連所以在這里規(guī)則很重要另外此步驟不能在命令行下實現(xiàn)。下圖為例:以下是以命令行模式配置關(guān)規(guī)則:/ i address add address=192.168.1.1/24 network=192.168.1.0 broadcast=192.168.1.255 interface=lanadd address=116.21.32.241/24

14、network=218.17.119.1 broadcast=0.0.0.0 interface= oe-out1 add address=121.32.177.37/24 network=218.17.119.1 broadcast=0.0.0.0 interface= oe-out2add address=117.21.32.241/24 network=218.17.119.1 broadcast=0.0.0.0 interface= oe-out3 add address=122.32.177.37/24 network=218.17.119.1 broadcast=0.0.0.0 i

15、nterface= oe-out4 第四步配置srcnat(i偽裝):這步的意思就是將已經(jīng)做完標(biāo)記的數(shù)據(jù)包進(jìn)行I頭修改這樣可以保證返回的數(shù)據(jù)包每個數(shù)據(jù)包可以找到自己的線如果不做那就是只有出沒有進(jìn)了因為包回來后找不到自己的由了。以下為命令行模式下的配置:/ i firewall nat add chain=srcnat connection-mark=1 action=src-nat to-addresses=116.21.32.241 to-orts=0-65535 add chain=srcnat connection-mark=2 action=src-nat to-addresses=1

16、21.32.177.37 to-orts=0-65535 add chain=srcnat connection-mark=3 action=src-nat to-addresses=117.21.32.241 to-orts=0-65535 add chain=srcnat connection-mark=4 action=src-nat to-addresses=122.32.177.37 to-orts=0-65535 第五步配置由規(guī)則:經(jīng)過前四步的詳細(xì)配置完成后現(xiàn)在就是要實現(xiàn)將“1”和“2”兩個池中的數(shù)據(jù)包分別走不同的線了就是由策略的意思我們的策略是被標(biāo)記為“1”的數(shù)據(jù)用116.21.

17、32.241為 關(guān)同樣被標(biāo)記為“2”的數(shù)據(jù)從121.32.177.37這個關(guān)出去為了防止有些包沒有打上標(biāo)記所以再加上一條沒有標(biāo)記的包從121.32.177.37這個關(guān)出去也就是說121.32.177.37為默認(rèn)關(guān)。配置完成后如下圖:以下為命令行模式下的配置:/ i route add dst-address=0.0.0.0/0 gateway=116.21.32.241 scoe=255 target-scoe=10 routing-mark=1 add dst-address=0.0.0.0/0 gateway=121.32.177.37 scoe=255 target-scoe=10 ro

18、uting-mark=2add dst-address=0.0.0.0/0 gateway=117.21.32.241 scoe=255 target-scoe=10 routing-mark=3 add dst-address=0.0.0.0/0 gateway=122.32.177.37 scoe=255 target-scoe=10 routing-mark=4 / i route add dst-address=0.0.0.0/0 gateway=122.32.177.37 scoe=255 target-scoe=10第六步填加防掉線腳步:腳本是ROS官方提的雖然短短幾行代碼但具體是

19、怎樣的工作原理我也實在沒弄通不過好在腳本是通用的將腳本設(shè)置成自動運行就可以了以下是配置圖::local assign-address:local new-address:local status:local x:set x 4:for i from=1 to=$x do=:set status /interface get /interface find name=("oe-out" . $i) running :if ($status=true) do=:set new-address /i address get /i address find dyna

20、mic=yes interface=("oe-out" . $i) address:set new-address :ick $new-address 0 (:len $new-address -3):set assign-address /i address get /i address find dynamic=no interface=("oe-out" . $i) address:set assign-address :ick $assign-address 0 (:len $assign-address -3):

21、if ($assign-address != $new-address) do= /i address set /i address find comment=$i address=$new-address network=$new-address broadcast=$new-address/i route set /i route find comment=$i gateway=$new-address/i route set /i route find comment="3" gateway=$new-address/i fir nat set /i

22、fir nat find comment=$i to-addresses=$new-address 至此所有配置工作完成由于ROS基礎(chǔ)配置過程較多所以在這里只針對ADSL配置和負(fù)載平衡進(jìn)行了詳細(xì)的介紹由于實際當(dāng)中配置多條ADSL多為重復(fù)過程所以在這里只以兩條線為例如果配置多條ADSL來實現(xiàn)疊加速還要注意一些細(xì)節(jié)可以說按照以上流程再詳細(xì)掌握了以下細(xì)節(jié)后就可以應(yīng)用自如了。按照以上標(biāo)準(zhǔn)流程三條或者多條線的負(fù)載均衡則需要修改第二步標(biāo)記連接和由中的參數(shù)例如三條線就要加三個標(biāo)記而重要的是NTH參數(shù)比如是三條線則要在規(guī)則當(dāng)中加入三條分別將NTH值修改為: nth=2,3,0. 2,3,1. 2,3,2如果是

23、4條線那么規(guī)就要設(shè)置為4條NTH的值為:nth=3,4,0. 3,4,1.3,4,2 3,4,3至于為什么要這樣設(shè)置具體NTH值的意義可以查閱相關(guān)資料。其他方面就是關(guān)、I偽裝、由規(guī)則等都要按多條線的模式來設(shè)置 這樣就可以完成多線均衡負(fù)載了經(jīng)過實測最多可以完成8條線均衡負(fù)載速可以達(dá)到12M以上??吹竭@里希望大家應(yīng)該明白一點ROS命令行模式在設(shè)置復(fù)雜的由當(dāng)中要比圖形界面設(shè)置簡單一些尤其是在設(shè)置多條線的時候只需要修改相應(yīng)命令值就可以了。另外以上配置如果細(xì)細(xì)鉆研完全可以研制出自己的成品由器目前很多業(yè)內(nèi)人士并不愿意貢獻(xiàn)出詳細(xì)的配置教程原因就在于此這個配置方案可以真正實現(xiàn)多條ADSL線同時工作即使只有一個

24、人在上所以也可以解決ADSL常掉線不適合吧的問題在此我將詳細(xì)過程加以解釋目的是為了讓更多的管朋友們學(xué)習(xí)用的希望大家不要借此賣錢應(yīng)該抱著交流學(xué)習(xí)的態(tài)度幫助更多管朋友提升技術(shù)水平。很多人都不明白這些腳本的意思我在這解釋一下。這樣可以方便其它人的修改。:local assign-address #設(shè)本地變量名:local new-address #設(shè)本地變量名:local status #設(shè)本地變量名:local x #設(shè)本地變量名:set x 2 #給變量賦值為2:for i from=1 to=$x do= #做x的循環(huán)x的數(shù)為多少就做多少次循環(huán) $為變量調(diào)用符:set status /inte

25、rface get /interface find name=("oe-out" . $i) running #獲取OE-out $i是否為運行狀態(tài) 每運行一次循環(huán)i的值加1現(xiàn)在i的值應(yīng)為1所以就是做OE-out1的運行狀態(tài)的獲取。:if ($status=true) do= #前一句得到了OE-out1的狀態(tài)情況這句就是對其狀態(tài)的處理如果運行狀態(tài)為運行那么就去行do=里的命令如果為false的直接結(jié)束。:set new-address /i address get /i address find dynamic=yes interface=("oe-out" . $i) address #獲取 OE-out $1的動態(tài)I。這個I是帶有掩碼的:set new-address :ick $new-address 0 (:len $n

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論