将以下命令放在防火墙脚本中,其作用是将IP段为192.168.1.66-192.168.1.126之间的主机的总连接数限制在200个。并且将TCP 20-23,25,53,80,110,443和UDP 53端口排除。
可能在Tomato中查看全局连接数会发现远远超过200个,这个并不是说iptables的设置没有生效,检验的办法就是将TCP的最大连接数设置为1,然后开始下载,这时应该是无法访问网页了。
#Limit TCP connections per user
iptables -t nat -I PREROUTING -p tcp --syn -m iprange --src-range 192.168.1.66-192.168.1.126 -m connlimit --connlimit-above 100 -j DROP
#Limit all *other* connections per user including UDP
iptables -t nat -I PREROUTING -p ! tcp -m iprange --src-range 192.168.1.66-192.168.1.126 -m connlimit --connlimit-above 100 -j DROP
#TCP 20-23,25,53,80,110,443 are not affected
iptables -t nat -I PREROUTING -p tcp --dport 20:23,25,53,80,110,443 -j ACCEPT
#UDP 53 is not affected
iptables -t nat -I PREROUTING -p udp --dport 53 -j ACCEPT