WireGuard 隧道边界标志WireGuard加密隧道 · 配置指南获取客户端
北大西洋海岸的黑色玄武岩柱与青蓝海潮
WireGuard / TUNNEL FIELD GUIDE

WireGuard服务器搭建、
公私钥配置与隧道路由
使用指南

从一对密钥,到一条可用的加密隧道。
系统梳理服务器部署、Peer 管理、AllowedIPs 路由、
UDP 握手、DNS 及连接异常排查。

BASALT COAST / 自然的结构,清晰的连接
01 UNDERSTAND THE TUNNEL

先理解结构,
再开始配置。

WireGuard 以 Interface 建立本机接口,以公钥识别 Peer。Endpoint 指向远端的 UDP 地址,AllowedIPs 则将隧道内的地址范围与身份关联。

理解接口与 Peer ↗
真实机柜内的服务器、交换设备与网络线缆
基础设施环境配图 / 不代表本站设施
02 DEPLOY WITH CONFIDENCE

把服务端部署,
拆成可验证的步骤。

从 Debian 12 开始,分清 wg 与 wg-quick 的职责。安装软件包只是起点,配置权限、接口地址、UDP 监听和 systemd 状态都需要单独确认。

  • 01确认环境与软件包Debian 12 / 内核
  • 02创建接口与 Peer 配置wg0.conf
  • 03启动服务并观察状态wg-quick@wg0
阅读完整部署教程 ↗
03 KEYS & PEER IDENTITY

密钥定义身份。
让每台设备各有归属。

独立设备使用独立密钥对。本机持有 PrivateKey,对端登记 PublicKey;可选的 PresharedKey 需要双方一致,并保持私密。

查看密钥管理方法 ↗
配置字段所属位置管理原则
PrivateKey本机 Interface本地生成,严格保密
PublicKey对端 Peer交换公钥,核验设备
PresharedKey双方 Peer可选附加密钥,双端一致
AllowedIPs每个 Peer登记地址归属,避免冲突

配置与备份同样敏感。轮换身份时,同步更新相关对端,并移除旧 Peer。

04 ROUTE WITH INTENTION

哪些流量进入隧道,
由清楚的路由决定。

AllowedIPs 在发送时选择 Peer,在接收时检查源地址。它与系统路由协同工作,不等于一条普通防火墙规则。

IPv4 和 IPv6 分别设计。::/0需要实际可用的 IPv6 路径;不要只把它追加到配置末尾。

进入隧道路由指南 ↗

分流 / Split Tunnel

仅将需要访问的远端地址范围送入隧道。

AllowedIPs = 192.168.50.0/24

全隧道 / Full Tunnel

匹配全部 IPv4,仍需核对网关转发、回程和 DNS。

AllowedIPs = 0.0.0.0/0

以上地址仅为示例。服务端和客户端的 AllowedIPs 不应机械照抄。

05 FORWARDING & RETURN PATH

握手之后,
还有去程与回程。

Linux IP forwarding 决定内核是否转发,nftables 决定流量是否被允许。目标网络还需要能把响应送回客户端。

  • 01区分 input、forward 与 output
  • 02确认真实出口接口与过滤规则
  • 03按需求选择回程路由或受限 NAT
理解 IP 转发、nftables 与 NAT ↗
网络机柜中的蓝色、红色和绿色连接线缆
真实网络设备配图 / 路由与过滤是不同环节
06 HANDSHAKE & NAT

让状态成为证据。

Endpoint、UDP 端口、Latest Handshake 和 Transfer 帮助定位异常。握手时间更新,不保证目标内网或实际应用已可用。

PersistentKeepalive 可帮助某些位于 NAT 后的设备维持映射。25 秒是常见参考值,应按场景选择。

检查握手与保活 ↗
07 / DNS & RESOLUTION

IP 能通,域名为何不通?

DNS=由 wg-quick 等工具处理,并非 WireGuard 核心协议的必备字段。Linux 的 resolvconf、系统解析器与不同平台客户端,需要分别核对。

先确认 DNS 服务器的路由可达,再验证系统实际使用的解析路径。

理解 DNS 与客户端解析 ↗
09 THE TUNNEL LEDGER

六篇教程,一条完整路径。

10 QUESTIONS, ANSWERED

配置前,
先厘清这些问题。

WireGuard服务器部署后,为什么需要区分 wg 与 wg-quick?

wg 管理密钥、Peer 和监听等专属参数;wg-quick 还负责地址、路由及可选 DNS 集成。查看两种工具与 systemd 的分工。

AllowedIPs配置不同,会怎样影响客户端流量进入隧道的范围?

具体网段适合选择性访问,0.0.0.0/0 匹配全部 IPv4。系统路由和 Peer 选择必须同时满足,服务端也要正确检查来源。阅读分流与全隧道对照。

WireGuard能够完成握手,但无法访问目标网络,应该先检查哪些环节?

先看目标路由,再检查 Linux 转发、forward 过滤及目标返回路径。握手只证明认证交换,不证明业务路径完整。沿去程与回程检查。

客户端可以访问IP地址却无法访问域名,是否一定属于隧道握手失败?

不一定。先确认 DNS 服务器可达,再检查客户端如何把 DNS 交给系统解析器。查看 DNS 分层验证方法。