WireGuard 能通过命令行控制吗?如何确保 wg 常时保持连接?

16 小时 40 分钟前
 LeeReamond

目前使用 WG 组了个异地网。

遇到的问题是,WG 架在 Windows 机器上,windows 为了使用方便装的都是企业版而不是 LTSC 版,7*24 开机的话隔一段时间就会自动更新,目前已经遇到过一两次是因为自动更新重启后,wg 第一时间不能自动组网,导致连接在重启后没能恢复的情况。

想实现的效果是写个第三方程序监控 WG 网卡连接的状态,如果没连接的话就发送打开连接的命令这样?不知道有没有办法实现

584 次点击
所在节点    问与答
12 条回复
moefishtang
16 小时 35 分钟前
我这里好像安装完启用配置文件后开机就自动连接了
我是使用官方提供的 MSI 安装包安装的
https://www.wireguard.com/install/
moefishtang
16 小时 34 分钟前
@moefishtang Linux 的话用 systemctl enable wg-quick@你的配置文件名 就可以,很方便
dcsuibian
16 小时 24 分钟前
Windows 开启 Hyper-V ,然后里面装个 Debian ,上面再装个 WireGuard 。我是这么干的。
thinkm
16 小时 23 分钟前
我每次开机 WG 都是自动连接
LeeReamond
16 小时 21 分钟前
@thinkm 大部分时候是这个行为,但有时会故障,推测是因为当时网络处在非连接状态,WG 似乎不会守护
PhaSelEza
16 小时 16 分钟前
Wireguard 的 Peer 有保活选项,比如:

PersistentKeepalive = 20
ysc3839
16 小时 9 分钟前
@moefishtang Linux 系统如果用的是 NetworkManager ,推荐直接在 NetworkManager 里面加个 WireGuard 配置。
MADBOB
15 小时 59 分钟前
Win 用 tunsafe 呢?
LeeReamond
15 小时 43 分钟前
@PhaSelEza 他这个看起来是调默认握手间隔的。如果连接在断开状态,这个有用?
PhaSelEza
15 小时 28 分钟前
@LeeReamond 不知和你的场景是否一致:WireGuard 一段时间无流量会断开,此时如果客户端没有公网地址,则服务器无法主动访问客户端,要等客户端产生流量、建立新的链接,才能双向通讯。

Linux 下 wg-quick 是不会主动建立链接的,直到产生客户端到服务端的流量。

因此,我在客户端配置了“PersistentKeepalive = 20”这个选项,时刻保证链接存活、服务器能够随时访问客户端。
lysShub
15 小时 15 分钟前
把自动更新关了不就行了
COW
15 小时 2 分钟前
@LeeReamond 用 nssm 套一层呢,可以启动前前置命令检查网络。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1093987

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX