OpenVPN / OpenVPN/openvpn3

IPv6 priority in Windows and Apple issues

Open
#351 5 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
1.2k
Forks
467
PR merge metrics
No merged PRs in 30d

Description

Hi,

Version: 3.6.0 binary for Windows 11 and Apple (Mac OS, iOS)
Configuration 1:
remote <my_vpn>
remote <my_vpn> 443 tcp

Expected behavior: On a dual stack environment, connection to <my_vpn> via udp6, if the connection times out, then tcp6 should be tried. In a IPv4 only (for example Mobile) or failed IPv6 connection attempt it should use udp4. If those attempts fail, tcp4 should be the last resort.

Seen behavior:
Windows 11 on dual stack environment connects via udp4 to the server. In an IPv6 only, it connects via tcp6, it never tries to use udp6.
Mac Book on dual stack environment connects via udp4 (as Windows platform.). In an IPv4 only, connection fails with
"Endpoint address failmy (IPv6) is incompatible with transport protocol (udp4)"

Configuration 2:
remote <my_vpn> 1194 udp6
remote <my_vpn>
remote <my_vpn> 443 tcp

Expected behavior: As above.

Seen behavior:
Windows 11 on dual stack environment: Connection works as expected.
MacBook on dual stack environment works as expected, but in an IPv4 only environment, connection cannot be established and the error is
"Endpoint address family (IPv4) is incompatible with transport protokol (udp6)"

Did anyone noticed this behavior? As I do not have the infrastructure to compile the newest commit to test if it is already solved, I would appreciate your help.

BR

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source files, tests, or entry points are identified in the issue. Start by reproducing the listed remote configurations on the affected Windows and Apple environments, then trace address-family and transport fallback handling. Done means IPv6 and IPv4 environments follow the documented UDP-then-TCP fallback order without incompatible-address errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, ios, macos
Domain
networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.