WireGuard 能通过命令行控制吗?如何确保 wg 常时保持连接? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
LeeReamond

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

  •  
  •   LeeReamond Nov 30, 2024 2192 views
    This topic created in 516 days ago, the information mentioned may be changed or developed.

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

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

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

    13 replies    2024-12-01 17:52:20 +08:00
    moefishtang
        1
    moefishtang  
       Nov 30, 2024
    我这里好像安装完启用配置文件后开机就自动连接了
    我是使用官方提供的 MSI 安装包安装的
    https://www.wireguard.com/install/
    moefishtang
        2
    moefishtang  
       Nov 30, 2024
    @moefishtang Linux 的话用 systemctl enable wg-quick@你的配置文件名 就可以,很方便
    dcsuibian
        3
    dcsuibian  
       Nov 30, 2024
    Windows 开启 Hyper-V ,然后里面装个 Debian ,上面再装个 WireGuard 。我是这么干的。
    thinkm
        4
    thinkm  
       Nov 30, 2024
    我每次开机 WG 都是自动连接
    LeeReamond
        5
    LeeReamond  
    OP
       Nov 30, 2024
    @thinkm 大部分时候是这个行为,但有时会故障,推测是因为当时网络处在非连接状态,WG 似乎不会守护
    PhaSelEza
        6
    PhaSelEza  
       Nov 30, 2024
    Wireguard 的 Peer 有保活选项,比如:

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

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

    因此,我在客户端配置了“PersistentKeepalive = 20”这个选项,时刻保证链接存活、服务器能够随时访问客户端。
    lysShub
        11
    lysShub  
       Nov 30, 2024
    把自动更新关了不就行了
    COW
        12
    COW  
       Nov 30, 2024 via Android
    @LeeReamond 用 nssm 套一层呢,可以启动前前置命令检查网络。
    LeeReamond
        13
    LeeReamond  
    OP
       Dec 1, 2024
    @PhaSelEza 不是同一个场景,我也暂未遇到客户端无动作导致连接中断的情况,我的情况是服务端重启。

    另外连接不会自动保活这个不像是现代软件的行为,传输层协议都有自动保活呢。
    About     Help     Advertise     Blog     API     FAQ     Solana     2413 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 46ms UTC 01:09 PVG 09:09 LAX 18:09 JFK 21:09
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86