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

WireGuard AllowedIPs配置咨询:保留本地连接并将其余流量路由至VPN

WireGuard AllowedIPs配置咨询:保留本地连接并将其余流量路由至VPN

嗨,我来帮你梳理下WireGuard AllowedIPs的配置问题,针对你的核心需求——保留192.168.45.x本地Wi-Fi网络访问,同时将所有其他互联网流量(IPv4+IPv6)路由到VPN,咱们一步步拆解分析:

先说说你遇到的IPv6问题根源

你提到用::/0会导致所有连接(包括IPv4本地)都走VPN,这是因为WireGuard的路由优先级很高,当你指定::/0(全IPv6地址空间)时,Windows的路由表会被覆盖,连带影响IPv4的路由逻辑。而改成::/1加8000::/1其实就相当于覆盖了整个IPv6地址空间(::/1是前半段,8000::/1是后半段),这样既不会破坏本地IPv4路由,又能让所有IPv6流量走VPN。

分析你尝试的三个配置

  1. 第一个配置

    • IPv6部分用了::/1 + 8000::/2,这里8000::/2只覆盖了IPv6后半段的一部分,导致部分IPv6地址没有被路由到VPN,所以Edge的IPv6功能异常,存在IPv6流量泄漏的风险。
    • IPv4部分手动列出了一大堆要路由的网段,这种方式不仅冗余,还容易出错——比如我检查下来,你的本地网段192.168.45.x并没有被明确排除,理论上会被路由到VPN,这可能和你说的“works partly”存在矛盾,说明手动配置的规则大概率有疏漏。
  2. 第二个配置

    • 把8000::/2改成8000::/1后,IPv6地址空间被完全覆盖,所以Edge的IPv6恢复正常,这部分是没问题的。
    • 但IPv4的手动网段列表依然存在冗余和出错风险,比如是否真的准确排除了所有本地相关网段?一旦有疏漏,要么本地流量走VPN(无法访问本地设备),要么部分互联网流量不走VPN(泄漏风险)。
  3. 第三个配置

    • 把128.0.0.0/3改成128.0.0.0/1,其实128.0.0.0/1已经覆盖了所有大于等于128.0.0.0的IPv4地址,和前面的规则叠加后,确实能覆盖大部分IPv4流量,但同样存在手动配置的冗余和疏漏问题,维护起来非常麻烦。

你的问题解答

  • 会不会泄漏流量?
    第一个配置的IPv6有明显遗漏,大概率会导致部分IPv6流量不走VPN,存在泄漏风险;第二个和第三个配置的IPv6覆盖完整,但IPv4的手动排除规则如果有疏漏,也可能出现泄漏或本地访问异常的情况。

  • 配置有没有问题?
    三个配置都过于冗余,手动维护难度大,容易出现规则疏漏,不是最优解。

  • 最佳配置方案
    WireGuard支持排除式语法,用这种方式配置会简洁很多,而且不容易出错,完全符合你的需求:

    AllowedIPs = 0.0.0.0/0, ::/0, !192.168.45.0/24, !fc00::/7
    

    解释下这个配置:

    • 0.0.0.0/0:所有IPv4流量都路由到VPN
    • ::/0:所有IPv6流量都路由到VPN
    • !192.168.45.0/24:排除你的本地IPv4网段,让这部分流量直接走本地Wi-Fi
    • !fc00::/7:排除IPv6的本地唯一地址段(ULA),避免IPv6本地连接被VPN干扰

    你只需要把WireGuard配置文件里的AllowedIPs替换成上面这一行,保存后重新连接VPN,就能实现:本地192.168.45.x设备正常访问,其他所有互联网流量(IPv4+IPv6)都通过VPN路由,同时不会出现之前的IPv6异常问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.20 07:28:18