• 2644閱讀
  • 0回復

[原創]Linux - Qos頻寬管理設定 [復制鏈接]

上一主題 下一主題
 
發帖
*
流金幣
*
歲月值
*
貢獻值
*
發文數
2
超激值
0
回應好評度
0
發文好評度
0
只看樓主 倒序閱讀 使用道具 0樓  發表于: 2011-10-03
WE{fu{x  
小弟對 Linux 系統很喜愛 , 所以有一些研究 . 雖然市面上己經有很多硬體做的到頻寬管理 . 但基於Cost 的因素下 . 以下是使用 Linux 所提供的免費軟體來達到頻寬管理 . 希望大家會喜歡 . W)_|jpd[  
V-{3)6I$hG  
0N |l1Sn  
Qos頻寬管理設定 = 9Ow!(!@  
t@&U2JaL>W  
目前Linux提供的Qos頻寬管理套件為CBQ及HTB,此文件以CBQ為主。 =JkPE2mU  
R@X65o  
cbq.init 是一個 Linux shell script file,它提供了一個簡便的設定環境,讓管理者不需操作繁雜的 tc (Traffic Control) 指令,只需專注在頻寬的規劃即可。 %ER"Udh  
8l1s]K qr  
取得 cbq.init: l&/V4V-  
cbq.init SourceForge Page:http://sourceforge.net/projects/cbqinit -> ^Ex`  
以 cbq.init-v0.7.3 為例: :*=fGwIWS  
wget http://nchc.dl.sourceforge.net/sourceforge/cbqinit/cbq.init-v0.7.3 xU1_L*tu '  
mv cbq.init-v0.7.3 /sbin/cbq kxanzsSr9  
chmod 700 /sbin/cbq ~WjK'N4n5  
mkdir /etc/sysconfig/cbq oe'f?IY  
下載 FC2 shapecfg-2.2.12-15.i386.rpm (安裝後可直接使用 /sbin/cbq, version: 0.7.1) AV>_ bw.  
ftp://ftp.isu.edu.tw/pub/Linux/Fedora/linux/core/2/i386/os/Fedora/RPMS/shapecfg-2.2.12-15.i386.rpm D-/q-=zd  
]<3n;*8k?  
        (ps:此rpm for FC2,如果是FC3則可以試試shapecfg-2.0.36-4.i386.rpm) ^xyU *A}D  
{\WRW}iO  
設定 rD\)ndPv  
J dM0f!3  
環境: WAN <--> eth0 [ Linux NAT / Server ] eth1 <--> LAN g"Tb\  
WAN 頻寬: 2M / 256K &<=?O a  
設定檔路徑: /etc/sysconfig/cbq u ?-|sv*  
設定檔檔名規則: cbq-<0002>~<ffff>.<name> xekU2u}WE  
------------------------------------------------------------------------------------------------------ o7r7HmA@  
限制 LAN User 下載頻寬: R_4eME2LB  
iptables -t mangle -A FORWARD -o eth1 -d 172.16.1.0/24 -j MARK --set-mark 10 AMw#_8Y  
vi /etc/sysconfig/cbq/cbq-0002.download Hk1[ 0)  
DEVICE=eth1,100Mbit,10Mbit qj7 }]T_  
RATE=200Kbit Q$yMU [l)  
WEIGHT=20Kbit S-f .NC}:i  
PRIO=5 .E:3I!dH7  
MARK=10 P=[_W;->}  
------------------------------------------------------------------------------------------------------ ] 6X;&=H  
限制 LAN User 上載頻寬: h-f`as"d  
iptables -t mangle -A FORWARD -o eth0 -s 172.16.1.0/24 -j MARK --set-mark 20 VMee"'08  
vi /etc/sysconfig/cbq/cbq-0003.upload WYUel4Z  
DEVICE=eth0,100Mbit,10Mbit b8 ^O"oDrp  
RATE=50Kbit g@O H,h/  
WEIGHT=5Kbit oH,{'S@q  
PRIO=5 q4EOI  
MARK=20 &o;d  
------------------------------------------------------------------------------------------------------ W ZT) LYA  
設定 HTTP Server 對外頻寬: Ke;eI+P[  
vi /etc/sysconfig/cbq/cbq-0080.http |AQU\BUj  
DEVICE=eth0,100Mbit,10Mbit g kM Q=;Nn  
RATE=180Kbit %lnVzGP  
WEIGHT=18Kbit &-$27  
PRIO=5 8nu@6)#  
RULE=:80, j|KjQ'9  
------------------------------------------------------------------------------------------------------ 7D KTd^^M  
設定 SSH Daemon 對外頻寬: )ZW[$:wA  
vi /etc/sysconfig/cbq/cbq-0022.ssh QZm7 Q4  
DEVICE=eth0,100Mbit,10Mbit n)Zu>  
RATE=20Kbit 9Q.@RO$%C  
WEIGHT=5Kbit 8\X-]Gh\^  
PRIO=4 ;e"dxAUe!^  
RULE=:22, `0_,>Z  
------------------------------------------------------------------------------------------------------ {>3J96  
基本參數: &RHZ7T  
DEVICE=<ifname>,<bandwidth>[,<weight>] *)(S}D\94  
RATE=<speed> Yyr qO^9m  
WEIGHT=<speed> j S4\;  
PRIO=<1-8> ${h1(ec8  
PARENT=<clsid> .6=;{h4cpB  
MARK=<mark> }`$s"Iv@  
RULE=[[saddr[/prefix]][:port[/mask]],][daddr[/prefix]][:port[/mask]] IAHQT < ]  
詳細設定參數說明可 less /sbin/cbq 或從瀏覽器直接連結 cbq.init source 查看. -d.i4X3j  
執行 cbq.init: : 5X^t  
cbq start 即可 (如前述, 已將 cbq.init mv 為 /sbin/cbq) d=p=eUd2  
cbq stats 可查詢是否有封包通過設定好的條件, 以得知條件是否設定正確 +8|9&v`  
Usage: cbq {start | compile | stop | restart | timecheck | list | stats} uq2C|=M-x\  
參考文件:http://cha.homeip.net/blog/archives/2005/07/cbqinit.html H %bc.c  
如果有錯誤訊息產生則Log記錄在 /var/cache/cbq.init #z1/VZ  
f<{f/lU@  
可以由 tc qdisc show 指令Check設定是否生效。 ;u-[%(00S  
k\TP3*fD  
在 Download Webmin Module For CBQ Z[9t?ePL  
http://sourceforge.net/projects/webmin-cbq
歲月值條評分
快槍阿華 回應好評度 +3 - 04-22
評價一下你瀏覽此帖子的感受

精彩

感動

搞笑

開心

憤怒