iptables NAT 映射命令生成器 添加 / 删除 / FORWARD 回流放行
用于快速生成端口转发规则:宿主机端口 → 内网 IP:端口。 已考虑 DNAT 后经过 FORWARD 链时可能被默认策略 DROP 拦截的问题。
映射规则配置
填写参数后,可一键生成添加、删除或查看规则命令。
在线生成 · 不会直接修改你的系统
使用说明 & 回流检查

1. 规则的完整链路

外部请求进入宿主机后,通常会依次经过:

  • nat/PREROUTING + DNAT:把宿主机端口改写到内网 IP:端口。
  • filter/FORWARD:DNAT 后的数据包会被转发链检查,默认 DROP 时必须显式放行。
  • nat/POSTROUTING + MASQUERADE:把源地址伪装成宿主机,避免后端主机直接回给客户端导致连接不通。

2. 回包为什么会被 DROP

如果服务器设置了 iptables -P FORWARD DROP,只有 DNAT 和 MASQUERADE 还不够。 需要额外允许访问后端服务的新连接,并允许 ESTABLISHED,RELATED 状态的回包。

3. 常用查看 / 保存命令

  • 查看 NAT 表规则:
    sudo iptables -t nat -vnL --line-numbers
  • 查看 FORWARD 链规则:
    sudo iptables -vnL FORWARD --line-numbers
  • 查看默认策略:
    sudo iptables -S FORWARD
  • 保存规则:
    sudo iptables-save | sudo tee /etc/iptables.rules > /dev/null
建议:
  • 如果后端主机默认网关不是这台 NAT 服务器,通常需要开启 MASQUERADE。
  • 如果知道外网入口和内网出口网卡,建议填写,规则会更精确。
  • 先在测试环境验证,确认不会影响 SSH 或现有防火墙策略。
注意:
  • 对外暴露数据库端口时,务必配合防火墙、强密码和来源白名单。
  • OUTPUT 链不是常规入站端口映射,可能影响本机访问同端口的连接。