使用iptables+cgroup v2限制进程网络带宽
Linux内核5.2版本以上。
启用iptables
root权限执行:
systemctl enable iptables systemctl start iptables systemctl status iptables
准备资源组
假设已经启用了cgroup v2
,cgroup
挂载点为:/sys/fs/cgroup
。
[root@bogon ~]# cd /sys/fs/cgroup/ [root@bogon cgroup]# pwd /sys/fs/cgroup [root@bogon cgroup]# mkdir yz [root@bogon cgroup]# mkdir yz/net [root@bogon cgroup]# chown yz:yz -R ./yz
创建iptables规则
root用户执行。
创建规则
iptables -A INPUT -i lo -m cgroup --path yz/net -m limit --limit 1mb/s -j ACCEPT
查询规则
[yz@bogon ~]$ sudo iptables -nL --line-number Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT 0 -- 0.0.0.0/0 0.0.0.0/0 cgroup yz/net limit: avg 1/sec burst 5 Chain FORWARD (policy ACCEPT) num target prot opt source destination Chain OUTPUT (policy ACCEPT) num target prot opt source destination
删除规则
[yz@bogon ~]$ sudo iptables -D INPUT 1
打赏作者以资鼓励: