{"id":1298,"date":"2020-05-07T01:59:11","date_gmt":"2020-05-07T01:59:11","guid":{"rendered":"https:\/\/www.ipcpu.com\/?p=1298"},"modified":"2020-05-11T05:51:03","modified_gmt":"2020-05-11T05:51:03","slug":"linux-tc-limit","status":"publish","type":"post","link":"https:\/\/c.ipcpu.com\/2020\/05\/linux-tc-limit\/","title":{"rendered":"Linux\u4f7f\u7528tc\u5bf9\u7f51\u7edc\u8fdb\u884c\u9650\u901f"},"content":{"rendered":"

Linux\u4f7f\u7528tc\u5bf9\u7f51\u7edc\u8fdb\u884c\u9650\u901f.md <\/p>\n

\"\"<\/a><\/p>\n

\u4e00\u3001\u9650\u5236\u5411\u7279\u5b9aIP\u7aef\u7684\u51fa\u6d41\u91cfoutgoing<\/h2>\n
\n
tc qdisc del dev eth0 root 2>\/dev\/null\r\n\r\ntc qdisc add dev eth0 root handle 2:0 htb default 30\r\ntc class add dev eth0 parent 2:0 classid 2:11 htb rate 20Mbit ceil 20Mbit prio 1\r\ntc filter add dev eth0 parent 2:0 protocol ip prio 2 u32 match ip dst 10.140.0.0\/16 flowid 2:11\r\ntc filter add dev eth0 parent 2:0 protocol ip prio 2 u32 match ip dst 10.0.3.11\/32 flowid 2:11<\/code><\/pre>\n<\/div>\n

\u89e3\u9664\u9650\u5236<\/p>\n

\n
tc qdisc del dev eth0 root<\/code><\/pre>\n<\/div>\n

\u9650\u5236\u4ece\u7279\u6b8aIP\u6bb5\u7684\u5165\u6d41\u91cfincoming<\/h2>\n
\n
modprobe ifb numifbs=1\r\nip link set ifb0 up\r\n\r\n# redirect ingress to ifb0\r\ntc qdisc add dev eth0 ingress handle ffff:\r\ntc filter add dev eth0 parent ffff: protocol ip prio 0 u32 match u32 0 0 flowid ffff: action mirred egress redirect dev ifb0\r\n\r\n# add qdisc\r\ntc qdisc add dev ifb0 root handle 2:0 htb default 30\r\n# add default class\r\ntc class add dev ifb0 parent 2:0 classid 2:11 htb rate 20Mbit ceil 20Mbit prio 1\r\n# add ingress rules for 192.168.0.9\r\ntc filter add dev ifb0 parent 2:0 protocol ip prio 2 u32 match ip src 172.28.0.93\/32 flowid 2:11<\/code><\/pre>\n<\/div>\n

\u89e3\u9664\u9650\u5236<\/p>\n

\n
tc qdisc del dev ifb0 root\r\ntc qdisc del dev eth0 ingress\r\nmodprobe -r ifb<\/code><\/pre>\n<\/div>\n

\u4e09\u3001\u9ed8\u8ba4\u7684tc qdisc\u89c4\u5219<\/h2>\n
\n
[root@ab-ipcpu-com-01 ~]# tc qdisc\r\nqdisc noqueue 0: dev lo root refcnt 2 \r\nqdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1\r\n[root@ab-ipcpu-com-01 ~]# \r\n#@\u6bcf\u4e2a\u7f51\u5361\u90fd\u4f1a\u4ea7\u751f\u4e00\u6761<\/code><\/pre>\n<\/div>\n

<\/p>\n

<\/div>\n
<\/div>\n
\n
<\/div>\n
<\/div>\n
<\/div>\n
<\/div>\n
<\/div>\n<\/div>\n
\n
<\/div>\n
<\/div>\n
<\/div>\n
<\/div>\n
<\/div>\n<\/div>\n

<\/wiz_tmp_tag><\/p>\n

\u8f6c\u8f7d\u8bf7\u6ce8\u660e\uff1aIPCPU-\u7f51\u7edc\u4e4b\u8def<\/a> » Linux\u4f7f\u7528tc\u5bf9\u7f51\u7edc\u8fdb\u884c\u9650\u901f<\/a><\/p>","protected":false},"excerpt":{"rendered":"

Linux\u4f7f\u7528tc\u5bf9\u7f51\u7edc\u8fdb\u884c\u9650\u901f.md \u4e00\u3001\u9650\u5236\u5411\u7279\u5b9aIP\u7aef\u7684\u51fa\u6d41\u91cfoutgoing tc qdisc del dev eth0 root 2>\/dev\/null tc qdisc add dev eth0 root handle 2:0 htb default 30 tc class add dev eth0 parent 2:0 classid 2:11 htb rate 20Mbit ceil 20Mbit prio 1 tc filter add dev eth0 parent 2:0 protocol ip prio 2 u32 match ip dst 10.140.0.0\/16 flowid 2:11 tc […]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[13],"tags":[17,39],"_links":{"self":[{"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/posts\/1298"}],"collection":[{"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/comments?post=1298"}],"version-history":[{"count":2,"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/posts\/1298\/revisions"}],"predecessor-version":[{"id":1302,"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/posts\/1298\/revisions\/1302"}],"wp:attachment":[{"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/media?parent=1298"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/categories?post=1298"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/c.ipcpu.com\/wp-json\/wp\/v2\/tags?post=1298"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}