Linux centos 端口限速 tc iptables

作者:admin 日期: 分类:推荐 浏览:13467

1) 清理工作。

清理一下iptables Mangle规则。

iptables -t mangle -F

清理一下eth0上原有的队列类型。

tc qdisc del dev eth0 root

2)限制上行网速

1.给eth0添加一个根规则。PS : 这里的root非root账号的意思。

tc qdisc add dev eth0 root handle 1: htb default 1

2.创建根类。 100mbps 可以替换成你自己服务器的实际带宽。

tc class add dev eth0 parent 1: classid 1:1 htb rate 100mbps

3.创建支类限速。

tc class add dev eth0 parent 1:1 classid 1:5 htb rate 1500Kbit ceil 2048Kbit prio 1

rate 1500Kbit 代表最大带宽1536Kbit/s,改成你想要的带宽大小即可。

ceil 2048Kbit 代表突发带宽2048Kbit/s。

ceil >= rate

1:5 意思是每5秒钟检查一次。

4.创建过滤器。

tc filter add dev eth0 parent 1:0 prio 1 protocol ip handle 5 fw flowid 1:5

这里要注意的就是flowid 要和上一条的 classid对应起来。


3)借助iptables针对端口限速

如何限制多个端口?

iptables -A OUTPUT -p tcp -m multiport --sports 80,443 -j MARK --set-mark 5

如何限制10000-20000端口段?

iptables -A OUTPUT -p tcp -m tcp --sport 20001:29999 -j MARK --set-mark 5
iptables -A OUTPUT -p udp -m udp --sport 20001:29999 -j MARK --set-mark 5


关键词: