You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OpenWRT HTTP端口转发失效求助:本地可访问公网无法访问

问题描述

我尝试将HTTP端口转发至运行lighttpd的Linux桌面,但配置无法生效。服务器运行正常,换用nginx也可正常工作,能通过localhost访问页面,但无法通过公网IP访问。当前配置信息如下:

防火墙区域设置

Zone > ForwardingsInputOutputForward
lan > wanacceptacceptaccept
wan > rejectrejectacceptaccept

端口转发配置

config redirect
        option dest 'lan'
        option target 'DNAT'
        option name 'HTTP'
        option src 'wan'
        option src_dport '80'
        option dest_port '80'
        option dest_ip '192.168.1.100'

附当前设置截图:

  • OpenWRT防火墙区域设置
  • OpenWRT端口转发设置

请问我哪里配置错误?


排查与解决建议
  • 检查WAN区域入站规则:当前WAN区域Input为reject,需添加允许80端口入站的规则,否则转发流量会被提前拦截。进入OpenWRT防火墙的「流量规则」页面,新增一条来源为WAN、目标端口80的允许规则。
  • 验证目标主机连通性:在路由器上执行ping 192.168.1.100,确认LAN内可正常访问目标主机。若不通,检查目标主机的静态IP设置或LAN网络连接状态。
  • 检查本地防火墙:Linux桌面的本地防火墙(如ufw、firewalld)可能拦截外部请求。临时关闭防火墙测试:
    # 针对ufw用户
    sudo ufw disable
    # 针对firewalld用户
    sudo systemctl stop firewalld
    
    测试正常后,需在本地防火墙上添加允许80端口的规则。
  • 确认端口转发规则生效:在路由器上执行iptables -t nat -L PREROUTING -n,查看是否存在对应DNAT规则。若规则缺失,重启防火墙服务:
    /etc/init.d/firewall restart
    
  • 排查ISP端口封禁:部分ISP会封禁80端口用于公共HTTP服务,可临时将转发端口改为8080测试,若能访问则说明原端口被封禁,需使用其他端口或联系ISP协商。

内容的提问来源于stack exchange,提问作者fahimscirex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 14:16:21