一步步教你用linux做路由器限速 |
發(fā)布時間: 2012/5/20 17:36:27 |
linux的開源和免費使得越來越多的廠家用它來做防火墻和路由器,如海蜘蛛,飛魚星等,其實我們也可以用linux來打造一臺高性能的路由器。下面就以red hat為例(其他版本大同小異)教大家做一臺能限速的路由器,如何在linux下進行路由器限速就不再困難了。
安裝linux如果是新手請安裝時安裝圖形桌面。Linux路由器限速的設置步驟如下:
路由器限速第一步:建立adsl連接,在系統(tǒng)設置——網絡設置處有。在圖形界面下很容易搞定。
路由器限速第二步:打開IP轉發(fā)和偽裝(也就是路由與NAT)
1、作為根用戶打開/etc/sysconfig/network文件,在文件增加以下一行:
GATEWAYDEV=PPP0 這句話的作用是設定默認路由,有時沒有也可
2、打開IP轉發(fā)功能:打開/etc/sysctl.conf文件,修改net.ipv4.ip_forward=0一行,改0改為1
3、重啟系統(tǒng)
路由器限速第三步:設置iptables防火墻,決定那些IP能通過linux主機上網。
下面以允許192.168.0.0網段為例:
1、打開終端在#字提示符下輸入以下命令:
iptables -t nat -I POSTROUTING -o ppp0 -j MASQUERADE #這句意思是偽裝從pppo出去的IP
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT #這句意思是轉發(fā)來自192。168。0。0網段的通訊
iptables -A FORWARD -d 192.168.0.0/24 -j ACCEPT #這句意思是轉發(fā)到達192。168。0。0網段的通訊
iptables -A FORWARD -s ! 192.168.0.0/24 -j DROP #這句意思是拒絕轉發(fā)非192.168.0.0網段的通訊。
2、保存以上防火墻規(guī)則,以保證重啟后還有效, 輸入命令:iptables-save > /etc/sysconfig/iptables,這樣,你的linux路由器應該就能跑起來了。
linux做路由器限速的實現(xiàn):在linux中有專門限速的軟件--tc,但TC的語法新手難以掌握,我們可以在防火墻上通過限定某個IP或某段IP在一秒內通過的數據包的數量來限速。
下面以限制192.168.0.2這個IP的網速為例說說,在桌面環(huán)境下打開/etc/syscofngi/iptables 有沒有發(fā)現(xiàn),剛才的設定全記錄在這個文件里,現(xiàn)在做的就在這個文件里添加規(guī)則就得了。
1、先要找到filter
2、在filter下面一行增加以下兩行:
-A FORWARD -m limit -d 192.168.0.2 --limit 30/sec -j ACCEPT # 這句意思是限定每秒只轉發(fā)30個到達192。168。0。2的數據包(約每秒45KB 一個數據包是1.5KB)
-A FORWARD -d 192.168.0.2 -j DROP #這句作用是超過限制的到達192.168.0.2的數據包不通過)
3、路由器限速經過重啟系統(tǒng)就實現(xiàn)了。
【編輯推薦】
路由器當交換機用案例:兩個路由器連接實現(xiàn)上網
路由器設置:沒有交換機怎么實現(xiàn)上網?
破解星空極速限制路由器共享上網的方法
netcore路由器設置全過程 圖解
運營商網絡的新路由平臺 100G平臺核心路由器
DoS防范:路由器CAR限速策略
Cisco路由器限速:CEF rate-limit限速 本文出自:億恩科技【www.itdijia.com】 |