MikroTik 本地网络无法进行NAT转发

要实现这一点,您需要使用 "Internal NAT Hairpin"。您可以通过几个命令来配置它。

假设 1.1.1.1 是我们的外部IP地址,192.168.1.0/24 是我们的本地网络,而 192.168.1.128 是一个Web服务器。

然后,您需要添加以下NAT规则:

/ip firewall nat
# Forwarding
chain=dstnat action=dst-nat to-addresses=1.1.1.1 dst-address=1.1.1.1 dst-port=80,443
chain=srcnat action=src-nat to-addresses=1.1.1.1 src-address=192.168.1.128 src-port=80,443

# Masquerading
chain=srcnat action=masquerade src-address=192.168.1.0/24 dst-address=192.168.1.0/24

这条规则应该已经存在:

chain=srcnat action=masquerade out-interface-list=WAN

这些规则将启用 "Internal NAT Hairpin",允许内部网络中的设备通过公共IP地址访问同一网络中的其他设备,同时确保数据包正确地处理NAT和端口转发等规则。

"Internal NAT Hairpin" 更准确的翻译应该是 "内部NAT的头发转向" 或者 "内部NAT环路"。

在网络中,当一个内部设备想要访问同一内部网络中的其他设备时,如果这些设备都通过NAT与外部网络通信,则需要进行 "Internal NAT Hairpin"。这意味着数据包必须从源设备发送到路由器,然后被路由器转发回同一网络中的目标设备。这个过程中,路由器需要正确地处理NAT和端口转发等规则,以确保数据包能够成功传递。

[admin@MikroTik] /ip/firewall/nat> print
Flags: X - disabled, I - invalid; D - dynamic 
 0    chain=srcnat action=masquerade src-address=10.0.1.0/24 
      out-interface-list=LAN log=no log-prefix="" 

 1    ;;; 3389
      chain=dstnat action=dst-nat to-addresses=10.0.1.112 to-ports=3389 
      protocol=tcp dst-address-list=ddns dst-port=6666 log=yes 
      log-prefix="3389" 

 2    ;;; emby
      chain=dstnat action=dst-nat to-addresses=10.0.1.254 to-ports=8920 
      protocol=tcp dst-address-list=ddns dst-port=8920 log=yes 
      log-prefix="emby" 

 3    ;;; NAT
      chain=srcnat action=masquerade out-interface-list=WAN log=no 
      log-prefix="" 
------------------------
[admin@MikroTik] /ip/firewall/service-port> /ip/firewall/address-list/
[admin@MikroTik] /ip/firewall/address-list> print
Flags: X - DISABLED, D - DYNAMIC
Columns: LIST, ADDRESS, CREATION-TIME
 #   LIST               ADDRESS              CREATION-TIME      
17   ddns               i.xxxx.com         2024-01-19 00:44:01
;;; i.xxxx.com
18 D ddns               110.00.166.245       2024-01-25 04:06:1

------------------------
#2024年1月25日更新

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值