你的浏览器无法正常显示内容,请更换或升级浏览器!

MikroTik RouterOS 端口映射与防火墙配置实操

tenfei
tenfei
发布于2026-08-20 20:37 阅读9次
MikroTik RouterOS 端口映射与防火墙配置实操
整理 MikroTik RouterOS 端口映射与防火墙配置的完整实操流程,涵盖 dst-nat 端口转发、回流(Hairpin NAT)、防火墙规则、fasttrack 加速和连接追踪,附命令行示例和常见问题排查方法。
# MikroTik RouterOS 端口映射与防火墙配置实操 ## 前言 MikroTik RouterOS 在中小企业网络里应用广泛,但它的配置逻辑(Chain、NAT、Connection Tracking)对新手有一定门槛。本文聚焦最常用的端口映射和防火墙场景,给出可直接套用的配置。 ## 基础概念 RouterOS 防火墙分两块: - **Filter Rules**:过滤规则(input/forward/output) - **NAT Rules**:地址转换(srcnat/dstnat/masquerade) NAT 规则同样遵循从上到下匹配。 ## 场景一:内网上网(masquerade) ```bash /ip firewall nat add chain=srcnat src-address=192.168.1.0/24 out-interface=ether1 action=masquerade ``` ether1 是外网口,所有内网流量出去时伪装成外网口 IP。 ## 场景二:端口映射(dst-nat) 把外网 8080 端口映射到内网 192.168.1.10 的 80 端口: ```bash /ip firewall nat add chain=dstnat protocol=tcp dst-port=8080 in-interface=ether1 action=dst-nat to-addresses=192.168.1.10 to-ports=80 ``` 映射多个端口: ```bash /ip firewall nat add chain=dstnat protocol=tcp dst-port=80 in-interface=ether1 action=dst-nat to-addresses=192.168.1.10 to-ports=80 add chain=dstnat protocol=tcp dst-port=443 in-interface=ether1 action=dst-nat to-addresses=192.168.1.10 to-ports=443 ``` ## 场景三:回流(Hairpin NAT) 内网设备通过公网 IP/域名访问自己的服务器时,需要回流规则: ```bash /ip firewall nat add chain=srcnat src-address=192.168.1.0/24 dst-address=192.168.1.10 protocol=tcp dst-port=80 out-interface=bridge action=masquerade ``` 没有这条规则,内网访问公网域名会超时。 ## 场景四:基础防火墙规则 ```bash /ip firewall filter # 放行已建立连接 add chain=input connection-state=established,related action=accept add chain=forward connection-state=established,related action=accept # 放行内网访问路由器(管理) add chain=input in-interface=bridge action=accept # 放行 ICMP add chain=input protocol=icmp action=accept # 最后默认丢弃 add chain=input action=drop add chain=forward action=drop ``` 注意规则顺序:先 accept 再 drop。 ## 场景五:Fasttrack 加速 高带宽场景开启 fasttrack 降低 CPU 占用: ```bash /ip firewall filter add chain=forward action=fasttrack-connection connection-state=established,related add chain=forward action=accept connection-state=established,related ``` fasttrack 规则要放在其他 forward 规则之前。 ## 常见问题排查 ### 问题1:端口映射后外网仍访问不了 - 确认 dst-nat 规则的 in-interface 是否正确 - 确认 forward 链没有 drop 掉该流量 - 确认内网服务器网关指向路由器 ```bash # 查看 NAT 规则 /ip firewall nat print # 查看连接表 /ip firewall connection print where dst-address=192.168.1.10 ``` ### 问题2:规则不生效 检查规则顺序,RouterOS 从上到下匹配,第一条命中的规则生效。用 `print` 看顺序,必要时用 `move` 调整: ```bash /ip firewall nat move 3 0 ``` ### 问题3:内网访问公网域名失败 加回流规则(场景三),或改用内网 DNS 解析到内网 IP。 ## 小结 RouterOS 端口映射核心就三条:srcnat(上网)、dst-nat(映射)、masquerade(回流)。防火墙记住"放行已建立连接 + 放行管理 + 默认丢弃"的顺序。配完用 `print` 检查规则顺序,用连接表验证流量走向。

1

0

文章点评
Copyright © from 2021 by namoer.com
458815@qq.com QQ:458815
蜀ICP备2022020274号-2