linux网络设置限速丢包延时乱序

linux网络设置限速丢包延时乱序,第1张

1. 限速/取消限速/测试限速

     限速:   wondershaper eth0 10000 8000      下行10000kb/s   上行8000kb/s

     取消限速:  wondershaper clear eth0

     测试限速:  server端: iperf3 -s     client端: iperf3 -c  serverip -i 1

     查看指定端口速度:   iftop -i eth0

2. 模拟丢包

    tc  qdisc  add  dev  eth0  root  netem  loss  1%

3. 模拟延时

    tc qdisc add dev eth0 root netem delay 100ms

4. 模拟乱序

    tc qdisc add dev eth0 root netem delay 10ms reorder 25%

参考

https://blog.csdn.net/shelldon/article/details/54585742

1、用 iptables 的 owner 模块,给 --pid-owner 加上 MARK,然后 tc 里针对这个 MARK 做限速 现在的服务器上,基本已经普及了 SMP ,更进一步的,内核已经在自动发现支持 SMP 的时候,在 iptables 里把 owner 模块的 pid/cmd/sid 三个 match 都去掉了!现在的 owner 里只有 uid/gid 两个。所以这条路,在生产环境上基本行不通。所以推荐下面的两种方法:

2、使用 pipeviewer和 trickle这两个工具。trickle 是在BSD 上诞生的项目,这个工具使用ELF 的 preloader 机制,在命令执行的时候替换掉标准库中的 socket recv() 和 send() 部分,达到限速的效

3、cgroup ,它有 net_cls 控制器。不过和其他控制器不太一样的是它不直接控制网络读写,只是给网络包打上一个标记,然后把专业的事情交给专业的 TC 去做。嗯,思路和原先的 iptable 是很类似的。

专门的限速软件,只有linux防火墙如:pfsence,不过默认的iptables防火墙也可以限速的

如以ip地址来限速

iptables -A FORWARD -m limit -d 202.96.209.6 --limit 2400/s --limit-burst 100 -j ACCEPT

iptables -A FORWARD -d 202.96.209.6 -j DROP

iptables -A FORWARD -m limit -s 202.96.209.6 --limit 2400/s --limit-burst 100 -j ACCEPT

iptables -A FORWARD -s 202.96.209.6 -j DROP

限制某网段

iptables -A FORWARD -s 192.168.100.0/24 -m limit --limit 100/s -j ACCEPT

iptables -A FORWARD -s 192.168.100.0/24 -j DROP

以协议icmp放ddos限速

iptables -A INPUT -f -m limit --limit 150/sec --limit-burst 100 -j ACCEPT

限制ssh接入频率

iptables -A INPUT -p tcp –dport 22 -s 10.1.0.0/16 -j ACCEPT

iptables -A INPUT -p tcp –dport 22 -j ratelimit


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/279737.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-21
下一篇2023-04-21

发表评论

登录后才能评论

评论列表(0条)

    保存