1 Windows 杂谈
作为使用人数最多,覆盖最广的操作系统,是组网绕不开的。且不说60%的开发者使都使用Windows开发程序,很多的游戏,剪辑软件,显卡驱动都更加贴合Windows。
Linux以简洁的命令,清晰的架构,快捷的程序安装,成为了无数服务喜爱的温床。Wireguard在Linux中可以被方便的部署,配置。
多年使用Wireguard的我总结了多项Wireguard在Windows中的痛点,有了我的解决方案。
2 命令行操作
正常来看,Windows只能通过UI界面对接口进行操作,UI关闭后网络接口将会被关闭。所有配置的导入,修改,都依赖UI (ssh噩梦)。
不同于Linux有wg-quick接口控制工具,Windows只保留了最原始wg工具。但少有人知道,wireguard.exe本身不止是一个UI,还是一个命令行工具。

将Wireguard目录添加系统环境变量(默认安装时已经添加),然后彻底关闭UI页面(再见了UI)。
- 安装新接口作为系统服务(后台安装,不会开启UI接口,类似与
wg-quick,且重启不会丢失)
1 | wireguard.exe /installtunnelservice "%CONF_PATH%" |
- 卸载同理
1 | wireguard.exe /uninstalltunnelservice "%WG_INTERFACE%" |
- wg 工具和 Linux 一样,包括
wg show和wg sync,这里不再赘述。
3 IP转发
两者类似,但是要注意Windows要在powershell运行命令。
1 | # Linux |
4 跨接口转发
- 将Windows下Wireguard网络接口级别设置为
Private
1 | Set-NetConnectionProfile -InterfaceAlias "%WG_INTERFACE%" -NetworkCategory Private |
- 启用NAT转发Wireguard流量到别的接口
1 | # Linux |
- 等价于以下Linux命令
1 | iptables -t nat -A POSTROUTING -s %WG_ALL_IPS% -o eth0 -j MASQUERADE |
WGDashboard 插件,用于自动生成 WireGuard 配置(Half Mesh),客户端主动订阅配置,集中管理。
