How do you debug issues with WireGuard? Things usually go great but every now and then my subsonic server stops streaming (or my client stops getting the music) so his never happens on local network but o my when using WireGuard. Are there tools for debugging it? Cc @selfhosted@lemmy.world @selfhost@lemmy.ml

  • aard@kyu.de
    link
    fedilink
    English
    arrow-up
    9
    ·
    8 months ago

    You do the usual network checks first, check if wireguard packages come in, check latest handshake. Depending on your network setup you might want to set a lower MTU than default, or enable PersistentKeepalive.

    If none of that shows something useful you can enable debug logging via debugfs:

    echo module wireguard +p > /sys/kernel/debug/dynamic_debug/control
    

    You’ll then have additional messages in dmesg. You can switch it off by doing -p instead.

    • maiskanzler@feddit.de
      link
      fedilink
      English
      arrow-up
      5
      ·
      8 months ago

      +1 for MTU and persistent keepalive. The last one helps if the connection is lost after a certain amount of time and does not recover, the first is often the problem when connection is intermittent or just “weird”.

      Setting MTU requires knowing the MTU of your connection. Many ISPs provide IPv4 encapsulated in IPv6 protocol (Dual Stack Lite, I believe), meaning that from the regular package size you have to deduct the overhead of the encapsulation and if I remember correctly, also the package overhead for wireguard.

      • BitPirate@feddit.de
        link
        fedilink
        English
        arrow-up
        4
        ·
        edit-2
        8 months ago

        And maybe PPPoE.

        traceroute --mtu 1.1.1.1
        

        Pick the lowest value displayed for F=xxxx like e.g F=1492 and subtract 80.

        For my DSL connection the optimal value is 1412.

  • Magickmaster@feddit.de
    link
    fedilink
    arrow-up
    1
    ·
    8 months ago

    Personally, I just looked at my firewall’s logs on the WG port and the handshake info. Once you have a handshake I don’t think there’s much that can go wrong on the WG side, maybe there’s a problem with lost packets or network roaming?