Is it possible to block specific udp packet using iptables?
例如,我想阻止 bd 65
在第 3 行包含 like 的数据包,即 RTP 数据包的序列号
Is it possible to block specific udp packet using iptables?
例如,我想阻止 bd 65
在第 3 行包含 like 的数据包,即 RTP 数据包的序列号
是的,iptables“u32”模块将允许您对给定偏移量的位/字节值采取行动(即使是可变长度的标头)。语法非常难看,但它可以完成工作。搜索“iptables u32”,您将找到详细信息和示例。
该行看起来像这样:
... -m u32 --u32 "44&0xFFFF=0xBD65" -j DROP
(获取从偏移量 44 开始的 4 字节块,与 0xFFFF 并与 0xBD65 进行比较)
iptables 无法根据其有效负载 [1] 阻止数据包。
您需要深度数据包检测 (DPI) 才能过滤此类数据包。
我从来没有使用过它,但似乎http://l7-filter.clearfoundation.com/可以帮助你。
注意:DPI 可能会降低您的吞吐量。而且,在某些领域有很多法律限制......
[1]:您可以要求 iptables 阻止与字符串匹配的数据包(尝试: iptables -m string --help )