如何不在修改内核源码的情况下,可以监听某个端口,然后实现延时,丢包,断开呢 iptable 不能设置延时,丢包啥的

2016-09-27 16:04:06 +08:00
 linzhi

不用修改内核里面的 netfilter 这个模块,而实现对某个端口的延时、丢包控制

3602 次点击
所在节点    Python
7 条回复
redsonic
2016-09-27 16:56:13 +08:00
google iptables netem 模块
est
2016-09-27 16:58:57 +08:00
tc
linzhi
2016-09-27 18:20:32 +08:00
@redsonic
@est
感谢楼上 2 位,我试试 tc 和 netem
linzhi
2016-09-27 18:28:18 +08:00
@redsonic iptables 没法针对某个端口延时控制呢
linzhi
2016-09-27 19:13:07 +08:00
tc 和 netem 没法细粒度到端口呢
hrong
2016-09-27 20:54:46 +08:00
去问 GFW 的人,他们可精通这个了
redsonic
2016-09-28 07:00:37 +08:00
@linzhi tc+netem 就可以:
tc qdisc add dev eth0 root handle 1: prio && \
tc qdisc add dev eth0 parent 1:1 handle 2: netem corrupt 20% delay 40ms && \
tc filter add dev eth0 parent 1:0 protocol ip pref 55 handle ::55 u32 match ip dport 80 0xffff flowid 2:1

目标端口 tcp80 ,丢包率 20%,延迟 40ms


@hrong 能问到的 GFW 的人恐怕只精通在 web ui 上面 key 字符,以及哪些 domain 被特别关照。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/309304

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX