You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

NordVPN白名单配置后仍无法访问上级局域网子网的NAS设备,寻求技术解决方案

NordVPN白名单配置后仍无法访问上级局域网子网的NAS设备,寻求技术解决方案

我来帮你拆解这个问题,你遇到的情况本质是NordLynx(WireGuard协议)连接后,路由表和防火墙规则没有适配跨子网的局域网访问逻辑导致的,咱们一步步排查解决:

核心问题梳理

当你连接NordVPN后,NordLynx会创建一个虚拟网络接口(通常叫wg0),并把系统默认路由改成走这个接口——意味着除白名单流量外,其他请求都会发往VPN服务器。虽然你添加了192.168.0.0/16的白名单,但NordVPN的路由管理模块可能没自动生成**指向本地网关(Router B的192.168.1.1)**的192.168.0.0/24子网路由,导致NAS访问请求被错误地发到了VPN服务器那边,自然无法连通。

具体排查与解决步骤

1. 对比VPN连接前后的路由表

先断开VPN,在终端执行:

ip route show

找到这条关键路由记录(这是你访问NAS的正常路径):

192.168.0.0/24 via 192.168.1.1 dev [你的网卡名]  # 比如无线网卡是wlan0,有线是eth0

连接VPN后再执行一次ip route show,如果这条路由消失,或者下一跳变成了VPN接口的网关,那就是路由缺失的问题,直接看步骤2。

2. 手动添加静态路由

先通过ip link show确认你的本地网卡名(比如wlan0),然后执行:

sudo ip route add 192.168.0.0/24 via 192.168.1.1 dev [你的网卡名]

添加完成后立刻测试ping 192.168.0.50,如果能通,说明路由问题解决了。这个路由是临时的,重启VPN后会失效,你可以把这条命令写成脚本,每次连接VPN后自动执行。

3. 检查NordVPN防火墙拦截规则

如果添加路由后还是不通,可能是NordVPN的防火墙阻止了跨子网流量。先临时关闭防火墙测试:

nordvpn set firewall off

如果此时能访问NAS,说明是防火墙规则的问题。重新开启防火墙后,手动添加允许出站到NAS子网的规则:

sudo iptables -A OUTPUT -d 192.168.0.0/24 -j ACCEPT

注意:NordVPN重新连接时可能会覆盖iptables规则,你可以用iptables-save保存规则,或者查找NordVPN的自定义规则配置方法(部分版本支持在配置文件中添加持久化规则)。

4. 排查Router B的路由与隔离设置

有时候Router B的安全规则会影响跨子网访问,你可以登录Router B的管理界面检查:

  • 是否有防火墙规则阻止从192.168.1.157(你的笔记本IP)到192.168.0.0/24的流量
  • 是否启用了“AP隔离”之类的功能(虽然针对同子网,但可能间接影响跨子网访问)
  • 确认Router B的默认网关是192.168.0.1(Router A的IP),且路由表中存在192.168.0.0/24的路由(默认应该存在,因为它的网关指向Router A)

5. 尝试更精确的白名单配置

虽然192.168.0.0/16已经包含两个子网,但更精确的白名单规则优先级可能更高。你可以删除现有白名单,分别添加两个子网:

nordvpn whitelist remove subnet 192.168.0.0/16
nordvpn whitelist add subnet 192.168.1.0/24
nordvpn whitelist add subnet 192.168.0.0/24

重新连接VPN后测试访问NAS,看是否生效。

为什么默认白名单解决不了?

NordVPN的白名单只是标记哪些流量不走VPN,但它不会自动识别多层路由器串联的复杂本地拓扑,也就无法自动生成跨子网的本地路由规则——这就是为什么你需要手动干预路由或防火墙的原因。

备注:内容来源于stack exchange,提问作者Tyn

火山引擎 最新活动