我从一个空的iptables结构开始,所有的表和链都是默认的ACCEPT默认策略。 重现步骤:
iptables -I INPUT -s 192.168.0.1/24 -j ACCEPT iptables -L
在这一点上,我得到了下面的输出(其他链保持不变,所以我滑他们):
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- 0.0.168.192.in-addr.arpa/24 anywhere
输出打印时没有任何问题。 然后我添加一个DROP规则:
iptables -I INPUT 2 -j DROP iptables -L
产量
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- 192.168.0.0/24 anywhere DROP all -- anywhere anywhere
第二个iptables -L使输出在前两个标题行和规则本身之间有一个巨大的延迟(25-30秒)打印。
问题:为什么添加DROP规则会使-L命令在中间延迟运行? (是的,我知道它试图做一个反向DNS查询,但为什么添加一个DROP规则,而不是在添加-s 192.168.0.1/24 -j ACCEPT ?)
为什么有不同的来源输出? 在添加DROP之前为0.0.168.192.in-addr.arpa/24 ,之后为192.168.0.0/24 。
是的,我发现和阅读iptables -L很慢。 这是正常的吗? 。 使用-n可以使输出在没有延迟的情况下打印。
添加一个-n到你的iptables -L 。 这会加快你的命令。 然后看看你的DNSparsing器设置。 我敢打赌,你指的是192.168.0.0/24networking之外的DNS服务器。