Iptables+tc 網吧每IP 限速指令碼

來源:互聯網
上載者:User
#!/bin/sh# xiaoh www.linuxbyte.org #  定義進出裝置(eth0 內網,eth1外網)IDEV="eth0"ODEV="eth1" #  定義總的上下頻寬UP="50mbit"DOWN="50mbit" #  定義每個受限制的IP上下頻寬#rate 起始頻寬UPLOAD="4mbit"DOWNLOAD="5mbit"#ceil 最大頻寬MUPLOAD="5mbit"MDOWNLOAD="10mbit" #內網IP段INET="192.168.0." # 受限IP範圍,IPS 起始IP,IPE 結束IP。IPS="1" IPE="114" # 清除網卡原有隊列規則tc qdisc del dev $ODEV root 2>/dev/nulltc qdisc del dev $IDEV root 2>/dev/null # 定義最頂層(根)隊列規則,並指定 default 類別編號tc qdisc add dev $ODEV root handle 10: htb default 256tc qdisc add dev $IDEV root handle 10: htb default 256 # 定義第一層的 10:1 類別 (上行/下行 總頻寬)tc class add dev $ODEV parent 10: classid 10:1 htb rate $UP ceil $UPtc class add dev $IDEV parent 10: classid 10:1 htb rate $DOWN ceil $DOWN #開始iptables 打標和設定具體規則i=$IPS;while [ $i -le $IPE ]dotc class add dev $ODEV parent 10:1 classid 10:2$i htb rate $UPLOAD ceil $MUPLOAD prio 1tc qdisc add dev $ODEV parent 10:2$i handle 100$i: pfifotc filter add dev $ODEV parent 10: protocol ip prio 100 handle 2$i fw classid 10:2$itc class add dev $IDEV parent 10:1 classid 10:2$i htb rate $DOWNLOAD ceil $MDOWNLOAD prio 1tc qdisc add dev $IDEV parent 10:2$i handle 100$i: pfifotc filter add dev $IDEV parent 10: protocol ip prio 100 handle 2$i fw classid 10:2$iiptables -t mangle -A PREROUTING -s $INET$i -j MARK --set-mark 2$iiptables -t mangle -A PREROUTING -s $INET$i -j RETURNiptables -t mangle -A POSTROUTING -d $INET$i -j MARK --set-mark 2$iiptables -t mangle -A POSTROUTING -d $INET$i -j RETURNi=`expr $i + 1`done
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.