Support OpenVPN `explicit-exit-notify` client option to close UDP connections
Author: AlchiadusCreated Dec 1, 2022Updated Aug 6, 2026
Labelsprotocol/OpenVPN
OpenVPN has a UDP specific option to send an EXIT message over the control channel to cleanly close a UDP connection, see https://github.com/OpenVPN/openvpn/blob/179b3728b71013413885e453e477997f5a396f78/src/openvpn/sig.c#L340-L364.
From the OpenVPN man page:
--explicit-exit-notify [n]
In UDP client mode or point-to-point mode, send server/peer an exit notification if tunnel is restarted or OpenVPN process is exited. In client mode, on exit/restart, this option will tell the server to immediately close its client instance object rather than waiting for a timeout. The n parameter (default=1) controls the maximum number of attempts that the client will try to resend the exit notification message.
In UDP server mode, send RESTART control channel command to connected clients. The n parameter (default=1) controls client behavior. With n = 1 client will attempt to reconnect to the same server, with n = 2 client will advance to the next server.
OpenVPN will not send any exit notifications unless this option is enabled. SoftEther does not appear to listen to the EXIT message, which causes the session to remain open until a timeout occurs even if the OpenVPN client cleanly disconnects (using proto udp).
Source: SoftEtherVPN/SoftEtherVPN