WireGuard的AllowedIPs配置项是整个隧道路由体系的核心,绝大多数新手配置WireGuard后出现连通异常、本地断网、内网访问不通的问题,本质上都不是加密或者端口的问题,而是没有搞清楚WireGuard AllowedIPs:客户端与服务端如何配合的底层逻辑。这篇内容会从路由原理出发,梳理配置前的必要校验步骤,分场景给出两端的对齐规则,同时排查常见的配置误区,帮用户避开无意义的排错弯路。
AllowedIPs的核心路由逻辑基础
很多新手对AllowedIPs的第一认知存在偏差,误以为它是服务端用来限制客户端可访问IP的白名单规则,实际上它的核心作用是触发WireGuard在系统内核路由表里生成对应的路由条目,本身不具备任何访问过滤的能力。
WireGuard的两端是完全对等的节点,不存在传统VPN架构里明确的服务端管控客户端的单向逻辑,服务端配置在客户端peer条目下的AllowedIPs,是告诉本地内核哪些目标IP的流量要走WireGuard虚拟网卡转发给这个客户端节点,而客户端自己配置的AllowedIPs,是告诉客户端本地内核哪些流量要走隧道发给服务端,两端的规则是双向呼应的,单方面配置无法实现预期的路由效果。

运维人员调试WireGuard隧道两端路由配置的日常工作场景
配置前的前提校验
在动手修改任何AllowedIPs参数之前,首先要完整梳理两端节点现有的所有路由网段,包括本地物理网卡的内网网段、已经配置的其他VPN隧道网段、系统默认的公网路由段,避免后续配置的AllowedIPs网段和现有路由出现重叠冲突,这类冲突是最容易被忽略的隐性故障点。
其次要提前单独规划WireGuard专属的隧道虚拟子网,这个子网不能和两端的本地内网段、常用公网服务段重叠,快连vpn这个子网里的所有节点IP,都必须同时出现在对应对端的AllowedIPs配置范围内,否则两端哪怕握手成功也无法ping通隧道虚拟IP。
分场景的两端配合配置方法
如果是最常见的远程访问办公内网场景,用户只需要通过WireGuard访问服务端侧的办公内网,不需要走隧道转发公网流量,那么服务端侧的客户端peer配置里的AllowedIPs,只需要填写分配给这个客户端的专属隧道虚拟IP,加上服务端侧要暴露的办公内网网段即可,确保服务端收到发往办公内网的响应包时,能正确转发给对应的客户端。
客户端侧的AllowedIPs这时候只需要填写服务端的隧道虚拟IP加上要访问的办公内网网段,这样客户端本地只有访问办公内网的流量会走WireGuard隧道,日常的网页浏览、本地局域网访问的流量都会走原来的默认网关,不会出现本地断网、局域网打印机无法访问的问题。
如果有全局流量走隧道的需求,客户端侧的AllowedIPs才需要填写0.0.0.0/0覆盖所有IPv4地址,这时候要注意服务端侧的客户端peer配置里绝对不能直接填写0.0.0.0/0,否则服务端所有的公网访问流量都会被错误转发给客户端,直接导致服务端本身断网,正确的做法是服务端的peer配置里只保留客户端的专属隧道虚拟IP,额外在服务端配置全局的iptables转发规则处理客户端发来的公网流量。
配合后的校验与故障定位
两端配置完成并重启WireGuard服务之后,首先查看两端系统的内核路由表,确认所有在AllowedIPs里填写的网段,都已经生成指向WireGuard虚拟网卡的路由条目,同时检查是否存在优先级更高的冲突路由覆盖了新生成的隧道路由。
校验的第一步先尝试ping对端的隧道虚拟IP,如果能正常连通,说明基础的隧道段AllowedIPs配合是完全正确的,要是无法连通,优先检查两端的AllowedIPs是否把对方的隧道虚拟IP完整包含在内,很多新手会漏写单个节点IP,只配置大段网段反而出现路由优先级不匹配的问题。
如果隧道虚拟IP能正常连通,但无法访问对端暴露的内网网段,就要检查对端节点的peer配置里的AllowedIPs,是否包含了对应内网网段的路由条目,比如服务端要主动访问客户端侧的内网设备,就必须在客户端的服务端peer配置里,快连加速器把对应的内网网段添加到AllowedIPs列表中,否则客户端收到服务端发来的内网访问包之后会直接丢弃。
常见的配置误区
很多用户误以为AllowedIPs可以直接实现访问权限控制,只在服务端的客户端peer配置里填写指定的内网段,就以为客户端无法访问其他公网资源,实际上如果客户端自己的AllowedIPs配置了0.0.0.0/0,客户端的所有流量都会被转发到服务端,想要实现访问限制必须额外在服务端或者客户端配置防火墙规则,不能依赖AllowedIPs的路由功能实现权限管控。
多客户端部署的场景下,不少管理员会图省事给所有客户端的peer配置都直接填写0.0.0.0/0,直接导致服务端的内核路由出现冲突,所有客户端的流量转发逻辑全部混乱,正确的做法是给每个客户端的AllowedIPs只分配自己的专属隧道IP,公网转发的需求统一靠服务端全局的转发规则处理,避免路由冲突。
只要顺着内核路由生成的逻辑对齐两端的网段规划,不需要死记硬背固定的配置参数,就能避开绝大多数WireGuard连通性相关的问题,让隧道的路由转发逻辑完全符合自己的预期。
快连vpn 
