Tls-crypt-v2 in OpenVPN 2.6.14 not working?

I'm strugling to setup tls-crypt-v2 mechanism in OpenVPN.

Every time a client tries to connect I get the following errors in logs:

Sun Nov  9 08:28:17 2025 daemon.notice openvpn(Dom_server)[16082]: Connection Attempt Control Channel: using tls-crypt-v2 key
Sun Nov  9 08:28:17 2025 daemon.err openvpn(Dom_server)[16082]: Connection Attempt tls_crypt_v2_unwrap_client_key: client key authentication error
Sun Nov  9 08:28:17 2025 daemon.err openvpn(Dom_server)[16082]: Connection Attempt Can not unwrap tls-crypt-v2 client key
Sun Nov  9 08:28:17 2025 daemon.err openvpn(Dom_server)[16082]: Connection Attempt TLS Error: can not extract tls-crypt-v2 client key from [AF_INET]192.168.203.108:42131
Sun Nov  9 08:28:17 2025 daemon.err openvpn(Dom_server)[16082]: Connection Attempt TLS Error: could not determine wrapping from [AF_INET]192.168.203.108:42131

I'm using the latest avilable OpenVPN server which is 2.6.14-r2 and I have tested 2 clients: Windows OpenVPN 2.6.15 and the latest OpenVPN for Android by Arne Schwabe.
The same server configuration under OpenVPN 2.6.15 in Windows works fine.
I'm sure I've properly generated both tls-crypt-v2 keys and not mixed them up.
Can somone confirm this is broken right now?

Please connect to your OpenWrt device using ssh and copy the output of the following commands and post it here using the "Preformatted text </> " button (red circle; this works best in the 'Markdown' composer view in the blue oval):

Screenshot 2025-10-20 at 8.14.14 PM

Remember to redact passwords, VPN keys, MAC addresses and any public IP addresses you may have:

ubus call system board
opkg list-installed | grep -e openvpn -e dco
root@OpenWrt:~# ubus call system board
{
        "kernel": "6.6.106",
        "hostname": "OpenWrt",
        "system": "MediaTek MT7621 ver:1 eco:3",
        "model": "Netgear R6220",
        "board_name": "netgear,r6220",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "24.10-SNAPSHOT",
                "revision": "r28881-406b980d97",
                "target": "ramips/mt7621",
                "description": "OpenWrt 24.10-SNAPSHOT r28881-406b980d97",
                "builddate": "1758833715"
        }
}
root@OpenWrt:~# opkg list-installed | grep -e openvpn -e dco
kmod-ovpn-dco-v2 - 6.6.106.0.2.20240320-r1
luci-app-openvpn - 25.311.74441~90493e0
luci-i18n-openvpn-pl - 25.311.74441~90493e0
openvpn-easy-rsa - 3.1.3-r1
openvpn-openssl - 2.6.14-r2

Is your key generation correct?

I'm using openvpn to generate the keys.

openvpn --genkey tls-crypt-v2-server certs/v2crypt-server.key

openvpn --tls-crypt-v2 certs/v2crypt-server.key --genkey tls-crypt-v2-client certs/v2crypt-phone.key
openvpn --tls-crypt-v2 certs/v2crypt-server.key --genkey tls-crypt-v2-client certs/v2crypt-laptop.key

And as I stated, they work when I use the same server configuration in Windows OpenVPN working as a server.

Server logs built in features, like dco , tc and so on. Not sure which pertains which key exchange but worth rebuilding adding options found in other vpn server platform.

I just reinstalled the whole OpenWRT without keeping the settings.
Now it works. Weird.
Previously I was using images from eko.one.pl and now I used the official image.

Totally not OpenWrt problem in this case.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.