重定向到同一个本地端口是否会引起无限循环?

重定向到同一个本地端口是否会引起无限循环?

规则:

-t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 12345 -j DNAT --to-destination "127.0.0.1:12345"

它会循环吗?它定义得好吗?如何避免循环(如果有的话)?

我的脚本生成如下规则(最好不要将 127.0.0.1 作为例外):

-t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 12345 -j DNAT --to-destination "$addr:12345"

答案1

你是什​​么意思 ”它会循环吗“?该规则将被执行多次吗?

当数据包匹配该规则时,将不会重新访问(重新检查)该规则。那么,怎么可能出现循环呢?此外,仅在连接开始时(连接建立时)检查 NAT 规则。之后,所有数据包都将由连接跟踪模块处理,以应用相同的已匹配规则。

如果您仍有疑问,可以使用以下命令查看规则匹配的次数:

$ sudo iptables -t nat -L -n -v

相关内容