节点与线路

WireGuardPeer配置常见填写错误汇总与避坑指南

很多刚接触WireGuard的用户在完成服务端基础配置后,调整Peer对等节点参数时经常遇到连不上、握手超时、能建立隧道但无法访问内网资源等问题,大部分故障都不是公网链路本身的问题,而是Peer配置项里的小细节填写错误导致的。本文汇总了日常运维中最常遇到的几类WireGuard Peer配置常见填写错误,结合实际家庭软路由、办公跨网VPN场景给出可落地的检查和验证方法,帮用户避开配置坑点。

Peer公钥与预共享密钥的错配问题

不少用户配置Peer的时候,容易把服务端生成的Peer公钥填成服务端自身的公钥,或者反过来把Peer端的公钥填到服务端的Peer列表里,这类错配会直接导致两端握手完全失败,WireGuard运行日志里会持续出现“no peer found for public key”的提示,新手往往很难定位到具体是哪一侧的密钥填错。

网络设备:WireGuard Peer配

实操排查WireGuard Peer配置填写错误的故障场景

验证这个问题的方法很简单,分别在两端设备执行wg show命令,查看对应Peer条目下的public key字段,确认两端记录的对端公钥完全一致,注意手动复制的时候不要漏了最后几位字符,也不要误带入编辑软件自动生成的多余空格。如果开启了预共享密钥,水母加速器官网要确认两端填写的是同一份32字节的base64编码密钥,预共享密钥哪怕错一个字符,握手流程也无法完成,不会有任何明确的报错提示,很多用户会误以为是端口没开放导致的连接失败。

AllowedIPs字段的填写逻辑误区

AllowedIPs是WireGuard Peer配置里最容易被误解的参数,很多新手会直接把Peer的内网单IP地址填进去,却不知道这个字段同时承担了路由匹配的作用,如果你在客户端Peer的AllowedIPs里只填了服务端WireGuard虚拟网卡的IP,那客户端发起的所有访问服务端内网段的流量都不会走VPN隧道,会直接从本地默认路由发出去。

还有一类常见错误是在服务端的Peer配置里,AllowedIPs填了和其他Peer重叠的网段,比如给两个不同的Peer都分配了10.0.0.0/24的路由,WireGuard会自动把匹配到该网段的流量随机转发给其中一个Peer,导致两个Peer都出现部分内网访问异常。正确的检查方式是梳理所有Peer的AllowedIPs条目,每个客户端Peer在服务端的AllowedIPs只能填写分配给该客户端的虚拟IP,要写成带32掩码的单IP形式,比如10.0.0.2/32,而客户端侧的AllowedIPs如果要全局走隧道就填0.0.0.0/0, ::/0,如果只需要访问特定内网段就填对应内网的CIDR地址。

Endpoint与PersistentKeepalive的场景错配

很多用户在配置处于家庭NAT侧的Peer和有固定公网IP的办公服务端对接时,容易把服务端Peer配置里的Endpoint字段填成家庭宽带的动态域名,这完全搞反了两端的角色定位,服务端本身是被动监听端,不需要主动发起连接,只有处于运营商NAT后面的客户端Peer才需要填写服务端的Endpoint地址,也就是服务端的公网IP加WireGuard监听端口。

PersistentKeepalive参数的填写也有很多误区,不少用户不管什么场景都统一设置固定数值,实际上如果Peer两端都有独立公网IP,完全不需要开启这个保活参数,多余的保活报文只会增加不必要的带宽开销。只有当Peer处于家用路由器的NAT后方,长时间没有流量导致端口映射条目被运营商回收的时候,才需要给这个Peer配置PersistentKeepalive参数,主动定期向对端发送握手报文维持NAT映射条目。验证这个配置是否生效的方法是在NAT后方的Peer上抓包,确认对应WireGuard端口每隔设定的时间就会发出一个握手包,长时间挂着VPN也不会出现莫名断连的情况。

防火墙与端口绑定的隐性配置错误

很多用户配置完Peer之后,确认了所有密钥、IP参数都没问题,但还是无法完成握手,这时候大概率是Peer所在设备的防火墙没有放通WireGuard的出站入站流量。比如在OpenWrt软路由上配置Peer的时候,很多人只在WireGuard的配置页面填了参数,忘记在防火墙的区域规则里把WireGuard接口加入允许转发的区域,也没有放开UDP监听端口的入站权限,导致隧道报文被本地防火墙直接拦截。

还有一类很隐蔽的错误是,部分云服务器服务商的后台默认自带外部防火墙,很多用户在VPS系统里放开了UDP端口,却没有在云服务商的控制台安全组里放通对应端口的UDP协议,导致外部的Peer报文根本无法到达服务端网卡。排查这类问题可以用UDP端口探测工具测试对端的WireGuard UDP端口是否可达,确认报文可以正常穿过所有防火墙节点。

完成所有Peer配置修改之后,不要直接重启整个WireGuard服务,优先使用wg syncconf命令热加载配置,这个命令不会中断现有正常连接的Peer,也能快速反馈配置文件里的格式错误,避免因为整体重启导致所有在线Peer全部断连。日常排查WireGuard Peer配置问题的时候,水母优先查看内核输出的WireGuard运行日志,大部分填写错误都会在日志里留下明确的提示,不需要盲目逐行核对所有参数浪费时间。

VPN 基础编辑组
VPN 基础编辑组
内容编辑

解释加密隧道、连接协议与出口地址,帮助理解 VPN 的工作方式。

查看更多文章
连接指南

找到适合当前设备的指南

遇到回程路由缺失相关问题,可从“由管理员核对两端路由与必要转发”开始阅读。客户端单向发送计数增长不足以证明双向连通,需要结合具体环境判断。