RouterOS 6.27 从内网到内网的端口转发(发夹 NAT)

RouterOS 6.27 从内网到内网的端口转发(发夹 NAT)

有人在使用带有 6.27 固件的 RouterOS 从本地访问 Web 服务器时遇到问题吗?在升级到 6.27 之前,我一切都运行正常。

此外,Hairpin NAT 不起作用。

答案1

问题的关键在于 的dstnat处理早于srcnat。如果数据已经通过dstnat,那么 和 之后 `srcnat 规则才会起作用。

以下是使 Hairpin NAT 工作的配置:

/ip firewall nat> print
Flags: X - disabled, I - invalid, D - dynamic
 0    ;;; Hairpin NAT
      chain=srcnat action=masquerade protocol=tcp src-address=192.168.0.0/24
      dst-address=192.168.0.0/24 out-interface=bridge-local log=no log-prefix=""

 1    ;;; NAT masquerade for outgoing connections
      chain=srcnat action=masquerade out-interface=ether1-gateway log=no log-prefix=""

 2    ;;; HTTP
      chain=dstnat action=netmap to-addresses=192.168.0.150 to-ports=80 protocol=tcp
  dst-address=76.35.222.205 dst-address-type=local dst-port=81 log=no log-prefix=""

76.35.222.205是一个代表我的外部 IP 地址的假地址。我尝试过不使用这个地址,但在使用 Hairpin NAT 时会遇到几秒钟的延迟。

  • 规则 0 确保向发送请求的内部机器返回响应。
  • 规则 1 是常规 NAT 伪装,可与 Hairpin NAT 一起使用或单独使用
  • 规则 2 是端口转发,无论连接从何处发起。

当从内部请求本地 HTTP 服务器时,规则 2 首先起作用,然后是规则 0。

也可能是您的过滤规则有问题。

相关内容