WireGuardPeer配置教程客户端与服务端配合方法
VPN 基础

WireGuardPeer配置教程客户端与服务端配合方法

很多用户初次部署WireGuard的时候,经常遇到配置完两端文件却始终无法握手、隧道不通的问题,绝大多数这类故障的根源都不是加密算法或者网络环境的问题,而是没有理清WireGuard Peer配置:客户端与服务端如何配合的核心逻辑,本文从实际故障现象倒推排查步骤,逐项拆解两端Peer段的对应配置要求,帮你避开常见的配置误区。

配置前的前置状态校验

在开始调整Peer段配置之前,首先要确认服务端的WireGuard基础服务已经正常运行,内核wireguard模块已经成功加载,你可以先在服务端执行wg show命令,如果返回空的接口列表,说明服务本身还没启动,不要直接开始修改Peer参数,否则所有后续配置都不会生效。

网络设备:WireGuard Peer配

运维人员正在提前校验WireGuard服务运行状态与两端防火墙规则,排除网络层拦截隐患。

接下来要预先校验两端的防火墙规则,服务端侧需要放开WireGuard监听端口的UDP入站权限,科学上网客户端侧不需要额外放开入站规则,只要允许对应端口的UDP出站请求即可,提前排除网络层拦截的可能性,避免后续排查的时候走弯路。

服务端Peer段的配置核对要点

打开服务端的WireGuard配置文件,每个[Peer]段落都对应一个允许接入的客户端节点,不要把客户端相关的参数写到服务端自身的[Interface]段落里,也不要把多个客户端的参数合并到同一个Peer段落中,否则会出现身份校验混乱的问题。

首先核对服务端Peer段的PublicKey字段,这里必须填入对应客户端生成的公钥,不能填写服务端自身的公钥,也不能填写其他客户端的公钥,这是两端Peer完成身份校验的唯一凭证,哪怕错一个字符都无法完成初始握手。

接下来核对服务端Peer段的AllowedIPs字段,这里需要给当前客户端分配一个和服务端虚拟网卡同网段的独立IP,作为客户端在隧道内的虚拟地址,这个地址不能和其他Peer分配的地址重叠,也不能和服务端虚拟网卡的自身IP冲突。

客户端Peer段的对应参数匹配

打开客户端的WireGuard配置文件,客户端侧的[Peer]段落唯一对应你要接入的WireGuard服务端节点,这里的PublicKey字段必须填入服务端生成的公钥,和服务端Peer段填写客户端公钥的逻辑完全对应,很多新手搞反两边的公钥内容,科学上网是握手失败的最高发原因。

接下来核对客户端Peer段的Endpoint字段,这里要填入服务端的公网可访问IP或者域名,后面紧跟服务端WireGuard监听的UDP端口,如果你和服务端处于同一局域网环境,也可以填入服务端的内网IP,不要填入无法路由的保留地址,否则客户端根本找不到要连接的服务端节点。

最后核对客户端Peer段的AllowedIPs字段,这里填写的是所有需要走WireGuard隧道转发的目标网段,如果你希望所有流量都走隧道就填写0.0.0.0/0,如果只需要访问服务端侧的内网资源,就填写对应的内网网段即可,超神不要和本地已有的静态路由规则冲突。

配对后的连通性验证与误区规避

两端的Peer配置都修改完成并保存后,分别在服务端和客户端重启WireGuard服务,之后执行wg show命令查看Peer节点列表,确认两边都能正常识别到对方的公钥条目,没有出现配置加载报错的提示。

如果执行wg show之后,最新握手的字段始终没有生成时间戳,首先优先排查两端的公钥是否填反,其次核对客户端Endpoint的IP和端口是否正确,最后再排查防火墙规则是否拦截了UDP报文,不要上来就随意修改加密相关的默认参数。

如果握手已经成功建立,但是两端无法互相ping通隧道虚拟IP,优先检查服务端Peer段里给客户端配置的AllowedIPs地址,是否和客户端虚拟网卡上设置的虚拟IP完全一致,有没有漏写/32的子网掩码后缀,超神这类低级错误很容易被忽略。

最后要注意WireGuard Peer配置的常见误区,不要在服务端给多个客户端分配完全相同的AllowedIPs地址段,这类配置会直接导致服务端路由冲突,所有对应客户端都无法正常收发隧道报文,也不要随意修改PersistentKeepalive的数值,公网直连场景下使用默认配置就可以满足绝大多数使用需求。

Wi-Fi 与路由器编辑组
Wi-Fi 与路由器编辑组
内容编辑

检查无线信号、设备摆放与有线连接,逐步定位家庭网络瓶颈。

查看更多文章
配置入门

找到适合当前设备的指南

遇到大量小文件经VPN复制相关问题,可从“与单个大文件对照,选择支持可靠续传的工具”开始阅读。小文件复制慢不必然说明线路带宽低,需要结合具体环境判断。