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

pfSense OpenVPN客户端无法访问本地局域网,仅能访问服务器求助

我之前也碰到过一模一样的问题,折腾了好一阵才搞定,给你梳理一套逐步排查的思路,按顺序来大概率能找到问题:

第一步:先确认OpenVPN服务器的核心网络配置
  • 检查VPN客户端子网和本地LAN子网是否重叠:比如如果你的LAN是192.168.1.0/24,VPN客户端子网绝对不能用同一段,否则路由会直接冲突,客户端根本不知道该把LAN流量发往哪里。
  • 核对OpenVPN服务器设置里的「IPv4 Local Network(s)」:必须准确填写你的本地LAN网段(比如192.168.1.0/24),这是告诉VPN服务器要把哪些LAN网段的路由推送给客户端的关键配置。
  • 确认「Push LAN to clients」选项是否勾选:这个开关会自动把LAN路由下发给客户端,没开的话客户端根本不知道有LAN网段需要走VPN。
  • 查看客户端的路由表验证:Windows用命令route print,Linux/macOS用netstat -rn,检查输出里有没有本地LAN网段的路由条目,且下一跳是VPN服务器的网关地址。
第二步:重点排查防火墙规则(最容易踩坑的地方)

1. OpenVPN区域的防火墙规则

  • 必须创建一条入站允许规则:源选你的VPN客户端子网,目标选本地LAN子网,协议选「Any」(或者你需要的TCP/UDP),动作设为「Pass」。
  • 注意规则顺序:pfSense是从上到下匹配规则,如果这条允许规则被排在「拒绝所有」的规则后面,等于白设,一定要把允许规则放在前面。

2. LAN区域的防火墙规则

  • 别忽略LAN侧的出站回应规则:需要允许LAN设备向VPN客户端子网发起回应流量,也就是创建一条出站允许规则,源选LAN子网,目标选VPN客户端子网,动作「Pass」。
  • 如果你的LAN默认规则是允许所有出站,那这条可能不需要,但如果是自定义了严格的LAN规则,一定要补上。

3. WAN区域的防火墙规则

  • 这块和LAN访问关联不大,但可以快速确认下有没有误拦截OpenVPN的控制流量(比如UDP 1194端口),不过核心问题还是在前两个区域的规则。
第三步:路由与NAT设置检查
  • 静态路由冲突排查:检查pfSense的「静态路由」列表,有没有自定义路由把VPN客户端子网的流量导去了错误的地方(比如WAN),正常情况下OpenVPN会自动生成正确的路由,但自定义路由可能会干扰。
  • 出站NAT设置:不需要给VPN客户端访问LAN做NAT,反而要确保「Outbound NAT」里没有错误的规则把LAN流量转换成WAN出口。可以检查是否有「排除VPN到LAN的流量」的配置,或者用「Hybrid Outbound NAT」模式来精准控制。
第四步:客户端侧的快速验证
  • 临时关闭客户端的防火墙/安全软件:比如Windows Defender防火墙、第三方杀毒软件,有时候这些工具会拦截VPN到LAN的流量。
  • 检查客户端VPN连接属性:如果客户端设置了「使用VPN连接的默认网关」,那所有流量都会走VPN,但如果只是要访问LAN,只要有正确的LAN路由条目就行;如果没开默认网关,也要确保LAN路由已经被正确推送。

内容的提问来源于stack exchange,提问作者andi-g

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:08:31