Port Forward 是把外部連線轉到內網某台設備。例如你有一台內網伺服器 192.168.88.50,想讓外面連到它的 HTTPS 服務。
RouterOS 可以做到,但不要只照抄一條 NAT 規則。你還要確認自己有公網 IP、防火牆有正確放行,而且沒有把不該公開的服務暴露出去。
先確認你有沒有公網 IP
在 RouterOS 看 WAN IP:
/ip address print
/ip cloud print
再用外部網站查你的出口 IP。兩邊如果不同,可能是:
- 你在 ISP 的 CGNAT 後面。
- 前面還有另一台路由器。
- PPPoE / DHCP 拿到的是私有 IP。
如果 WAN IP 是這些範圍,多半不是可直接連進來的公網 IP:
10.0.0.0/8172.16.0.0/12192.168.0.0/16100.64.0.0/10
沒有公網 IP 時,port forward 通常不會成功。你需要向 ISP 申請固定 IP / 公網 IP,或改用 VPN、Tunnel、反向代理等方式。
基本 dst-nat 範例
假設:
- WAN interface:
ether1 - 內網伺服器:
192.168.88.50 - 外部 port:
443 - 內部 port:
443
設定 NAT:
/ip firewall nat add chain=dstnat in-interface=ether1 protocol=tcp dst-port=443 action=dst-nat to-addresses=192.168.88.50 to-ports=443 comment="Forward HTTPS to server"
如果 WAN 是 PPPoE,要改成:
/ip firewall nat add chain=dstnat in-interface=pppoe-out1 protocol=tcp dst-port=443 action=dst-nat to-addresses=192.168.88.50 to-ports=443 comment="Forward HTTPS to server"
防火牆也要放行
有些預設防火牆會擋 forward chain。你需要允許已 dst-nat 的連線:
/ip firewall filter add chain=forward connection-nat-state=dstnat action=accept comment="Allow port forwarded traffic"
規則位置很重要。如果前面已經有 drop rule,新增在後面可能不會生效。請用:
/ip firewall filter print
確認順序。
不要公開管理介面
不要把這些服務直接 port forward 到外網:
- WinBox。
- SSH。
- WebFig。
- RouterOS API。
- NAS 管理後台。
- 沒有更新的攝影機或 IoT 後台。
如果真的要遠端管理,優先用 VPN,或至少限制來源 IP。
常見連不進來原因
| 狀況 | 可能原因 |
|---|---|
| 外面完全連不到 | 沒有公網 IP、ISP 擋 port、前面還有一台路由器 |
| NAT 有寫但沒生效 | in-interface 寫錯、port 寫錯、connection tracking 舊連線未清 |
| 內網可以連,外網不行 | 防火牆 forward chain 擋住、服務只 listen 在內網 |
| 用網域測不通 | DNS 還沒指到正確公網 IP |
| 從內網用公網域名連不回來 | 可能需要 hairpin NAT 或 split DNS |
RouterOS 官方提醒,NAT 只處理連線的第一個封包,後續由 connection tracking 記住。改 NAT 後如果測試怪怪的,可以清掉 connection tracking 或等連線過期。
檢查 NAT 規則命中
查看 NAT counter:
/ip firewall nat print stats
如果外面測試時 counter 完全不增加,代表封包沒有打到這條規則。先查:
- WAN interface 是否寫對。
- 外部 port 是否寫對。
- 公網 IP 是否真的在這台 RouterOS 上。
- ISP 是否擋了 port。
測試方式
從外部網路測,不要只在同一個 LAN 裡測。
可以用手機 5G 測:
curl -I https://你的網域/
或測 port:
nc -vz 你的網域 443
Windows 可以用 PowerShell:
Test-NetConnection 你的網域 -Port 443
安全建議
- 只開必要 port。
- 內部服務要更新。
- 管理介面不要開到全 Internet。
- 有條件就限制來源 IP。
- 做好 log 與備份。
- 不確定時先用 VPN,不要直接公開後台。
下一步
如果你還不確定 WAN / LAN / NAT 基礎設定,先看 RouterOS 新手第一次設定。
如果 port forward 仍不通,請看 RouterOS 基礎排錯教學。
參考資料: