我想删除包含10.10.34.35
. 我怎样才能做到这一点?
我试过这样:
iptables -I INPUT -m udp -p udp --sport 53 -m string --algo kmp --hex-string '|31 30 02 31 30 02 33 34 02 33 35|' -j DROP
但它根本不会丢弃它们,我仍然会收到它们。然而,简单地iptables -I INPUT -m udp -p udp --sport 53 -j DROP
阻止所有来自端口 53 的它们,但我想选择其中包含的一部分10.10.34.35
作为响应。
首先,DNS 使用 UDP和TCP。
其次,A 记录的有线表示在 RFC 1035 中定义如下:
因此,当您尝试匹配时,IPv4 地址不会编码为字符串,而是编码为 32 位整数,因此值为 10、10、34、35