Introduction

This page shows the high-level status of OpenVPN 2.7 release.

Schedule

Release is roughly planned for two years after OpenVPN 2.6. So end of 2024 or beginning of 2025. Release is currently planned for Summer 2025. First Alpha release is expected in May.

It was discussed that we should provide official preview builds earlier this time to gather more feedback for merged changes. Also, the experience from the 2.6 release was to branch off release/2.7 later, since branching it off too early causes a lot of work for little benefit.

Features/fixes to include

completed/done

Task description Assigned to Status Ticket Patchwork / Gerrit
Support for multiple-protocol sockets (UDP/TCP) Giaan Done #556 multisocket topic
dco-win multipeer (--server) lev Done - Change 815
New API for DCO kernel module on Linux ordex Done - Change 941
Data v3 format with AES rekeying plaisthos, syzzer Done - Change 806
Switch from MSVC buildsystem to CMake for Windows builds djpig Done - Change 266
--cipher/--data-ciphers add DEFAULT syntax plaisthos Done - Change 828
Remove wintun driver support lev Done - Change 1021
Remove support for compression on send djpig Done - Change 755
Remove deprecated --no-replay djpig Done Deprecated Options
Make it harder to use --secret plaisthos Done Deprecated Options
Remove deprecated NTLM v1 support djpig Done Deprecated Options
Deprecate NTLM v2 support djpig Done Deprecated Options
Support TLS alerts plaisthos Done - Change 449
Change default for --topology to subnet djpig Done Deprecated Options
afunix/lwipovpn plaisthos, cron2 Done - lwipovpn topic
Tunnelcrack improvements for Windows d12fk Done - Change 489
DNS option rework (split DNS) - Windows/Linux/BSD lev, d12fk Done - "dns option" topic
Live route updates / push-update mrbff Done - push-update-client topic

should have

Task description Assigned to Status Ticket Gerrit / Patchwork
Tunnelcrack improvements for Linux d12fk TBD - -

nice to have / wild ideas

Task description Assigned to Status Ticket Patchwork / Gerrit
Bloom-filter DDoS protection plaisthos Gerrit - bloom topic
HAProxy support ralf_lici Gerrit - proxy-protocol topic
Transport plugin (primary use case: obfuscation) giaan WIP - -
Remove deprecated --ns-cert-type - - Deprecated Options -
Remove deprecated --tun-ipv6 - - Deprecated Options -
Remove deprecated --max-routes - - Deprecated Options -
Remove deprecated --dhcp-release - - Deprecated Options -
Properly deprecate _v1 and _v2 plugin functions - - Deprecated Options -
Implement kqueue on MacOS plaisthos wip (but slower than poll()) - -
Sort out multiple-plugin auth mess dazo, cron2 on-going - RFC patch 2327
Improve NM-OVPN integration cron2 trying to establish contact - -
Make TAP6-Windows Really Fast lev not started - -
SRV patch (set) ? patch needs work - -
Test server that does --auth-user-pass and/or challenge stuff cron2 (snair) --auth-user-pass done, challenge missing - -
Update OpenVPN PRF (move away from SHA1/MD5) syzzer/plaisthos "done" by moving to EKM - -
Maybe: fix radius-plugin - plugin is useful but not maintained very well ??? ??? - -
Test framework improvements (local "make check" crypto tests) syzzer - - -
Inner VRF support? ?? ?? ?? -
Route monitoring (enable clients to react to network changes) cron2 not started - -
Maybe: add PRF plugin interface - obsolete - -
Maybe: add key exchange plugin interface (allows easily doing .e.g post quantum kex) - obsolete - -
Maybe: add data channel separation (or, move to ovpn3, which already has this?) ??? ??? - -
Investigate TUNSLMODE on FreeBSD and NetBSD to get rid of iroute table (iroutes become normal system routes) cron2 obsolete - -
Dynamic routes ('route in ccd-file'), depends on netlink support ordex obsolete - -
tftp/wpad patch jjk patch on list, obsolete - -
Support TLS record splitting (like ovpn3) syzzer (started, but no patches available yet) #554 -
Improve control channel performance (further) - redo reliability layer, introduce windowing / scaling syzzer ??? - -
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9