连接指南

WireGuardAllowedIPs配置规则详解与全场

WireGuardAllowedIPs配置规则详解与全场

很多初次部署WireGuard的用户经常遇到两类典型故障,明明显示隧道已经连通,要么访问公网网站还是走本地网络,要么开启隧道后完全断网连任何地址都打不开,这类问题绝大多数都和WireGuard AllowedIPs的配置逻辑错误直接相关,本文会从实际故障现象出发,逐项拆解配置规则、排查步骤和正确示例,帮用户理清路由匹配的底层逻辑,避开常见配置误区。

从故障现象反推AllowedIPs的配置逻辑

首先我们先明确WireGuard AllowedIPs的基础定义,它不是很多用户误以为的“允许通过隧道的IP白名单”,而是WireGuard内置路由表的匹配规则前缀,系统会按照最长前缀匹配的原则,把符合前缀规则的流量全部转发到对应的WireGuard对等节点。

最常见的故障现象就是开启隧道后本地完全断网,很多用户第一反应是VPN服务器出问题,实际上大概率是你把AllowedIPs设成了0.0.0.0/0但没有同步设置正确的转发规则,或者本地原有默认路由被覆盖后没有配置WireGuard路由表项的优先级,导致系统找不到合法的下一跳地址。

网络设备:WireGuard Allow

技术人员现场调试WireGuard配置,排查隧道路由连通故障

分场景的WireGuard AllowedIPs配置示例说明

第一个场景是仅访问公司内网资源走隧道,公网流量全部走本地,这时候你不需要写全量地址,只需要把公司内网的网段比如192.168.10.0/24、10.0.0.0/8加到AllowedIPs字段里,小美VPN其他地址留空不对对等端开放全量路由,这种配置下就算隧道断开也不会影响本地正常上网。

第二个场景是全局流量走隧道,也就是大家常说的全流量转发模式,这时候WireGuard AllowedIPs的配置示例说明里最常用的写法是AllowedIPs = 0.0.0.0/0, ::/0,这里要注意不能只写IPv4的0.0.0.0/0,漏掉IPv6的前缀会导致本地IPv6流量直接绕过隧道泄露真实地址。

第三个场景是分流模式,只有指定的几个网段走隧道,其他流量走本地,WireGuard本身不支持域名前缀匹配,你可以把需要走隧道的服务对应的公网IP段逐个加到AllowedIPs里,小美VPN不要直接写全量默认路由,避免不必要的流量转发,也能降低隧道节点的带宽压力。

逐项排查配置错误的检查步骤

第一步先在WireGuard运行的设备上执行路由查询命令,查看生成的路由表是否和你写的AllowedIPs前缀完全对应,如果你发现配置的网段没有出现在路由表里,大概率是你写的CIDR格式不合法,比如把192.168.1.0/24误写成了192.168.1.0/16,或者填了重复的路由前缀被系统自动合并。

第二步测试连通性的时候先ping对等端的WireGuard内网虚拟IP,如果能通再去尝试访问AllowedIPs里配置的其他网段,小美VPN如果连虚拟IP都ping不通,要先检查对等端的AllowedIPs有没有把你本地的虚拟IP网段加进去,双向的路由规则必须同时匹配才能完成双向流量转发,单向配置规则肯定无法正常通信。

第三步如果配置了全量0.0.0.0/0的规则之后本地断网,要检查你有没有在配置文件里设置Table = off,如果关闭了自动生成路由表的选项,系统不会自动把默认路由指向WireGuard接口,反而会导致路由冲突无法正常转发任何流量,只需要删掉这个关闭路由表的参数就能恢复自动配置。

常见配置误区的预期结果验证

很多用户误以为在AllowedIPs里写0.0.0.0/1和128.0.0.0/1比直接写0.0.0.0/0更特殊,实际上这两个前缀组合的路由效果和全量默认路由完全一致,只是为了避开部分系统默认路由的优先级冲突,小美不会改变流量转发的实际路径,也不会带来额外的安全加成。

还有部分用户习惯把公网DNS地址单独加到AllowedIPs之外,想要让DNS查询走本地链路,这种配置很容易导致DNS泄露,因为全量路由规则的最长前缀匹配优先级比单个公网IP前缀更高,DNS流量还是会被转发到隧道端,不会按照你的预期走本地。

最后要注意AllowedIPs的规则是针对每一个对等节点单独生效的,如果你配置了多个WireGuard对等端,不要在不同对等端的AllowedIPs里写重叠的CIDR前缀,否则系统的路由选择会出现不可预期的冲突,导致部分流量随机走不同的隧道节点,出现连接不稳定、丢包率异常升高的问题。

连接排障编辑组
连接排障编辑组
内容编辑

按设备、网络、客户端和服务端逐层检查,让故障定位更有条理。

查看更多文章
配置入门

从一个连接问题开始

遇到无线中继回程不足相关问题,可从“靠近主路由或采用有线回程做对照”开始阅读。只查看终端信号格不能评估整段无线链路,需要结合具体环境判断。