wg set fail to update endpoint if traffic is flowing

xtus xtus at nexmanti.net
Tue Mar 31 10:36:52 CEST 2020


I was trying to update dynamically the endpoint for an interface, using `reresolve-dns.sh` or something like the following:

# wg set <interface> peer "<publickey>" endpoint "<FQDN>:<port>"

But the endpoint did not change, even if the `wg set` returns successfully, with retcode `0`.

Changing something like `persistent-keepalive` does work.

I debugged a bit, and I saw that if traffic is flowing throw the wireguard interface, then the endpoint change via `wg set` does not take effect.

The set endpoint works only if no traffic is flowing.

Is this expected behavior?


More information about the WireGuard mailing list