IPv6 OpenVPN Client on 4.8.1 Won’t Forward Traffic on GL‑MT3000

Description
The remote OpenVPN server accepts connections only over IPv6 UDP and has no public IPv4 (it responds with an unreachable CGNAT IPv4). The tunnel establishes and forwards traffic correctly on other OpenVPN clients such as phones.

On a GL‑MT3000 running 4.8.1 the tunnel will not pass traffic. Version 4.8 added IPv6 OpenVPN support, but I cannot get it to work on this device.

Reproduction steps (brief)

  1. Configure OpenVPN on the remote server to accept connections only via IPv6 UDP.
  2. Configure the GL‑MT3000 as an OpenVPN client and connect to that server.
  3. After the connection is established, attempt to send traffic from the router or a LAN host over ovpnclient1 (for example: ping -I ovpnclient1 8.8.8.8), or have the server ping the client VPN IP.

Observed behavior

  • OpenVPN control plane works: TLS handshake and session establishment succeed, and both server and router logs show the session up.
  • Tunnel data plane is completely nonfunctional: pings sourced from ovpnclient1 get no replies; direct pings to the OpenVPN server get no replies; the server cannot ping the client VPN IP.
  • Within about two minutes after connection the server sees no client packets and marks the client offline; the client likewise reconnects after roughly two minutes because it receives no server packets.
  • Basic IPv6 reachability for the control plane is confirmed (UDP6 handshakes complete). The failure appears to be in tunnel data forwarding or kernel policy/path handling.
  • Enabling or disabling killswitch and changing other settings on the GL‑MT3000 does not restore tunnel forwarding.
  • ip route and iptables have been inspected; no obvious misconfigurations were found.

Relevant routing and policy snippets
ip rule show (key entries):
0: from all lookup local
1: from all iif lo lookup 16800
800: from all lookup 9910 suppress_prefixlength 0
6000: from all fwmark 0x8000/0xf000 lookup main
6000: from all fwmark 0xa000/0xf000 lookup 1011
9910: not from all fwmark 0/0xf000 blackhole
9920: from all iif br-lan blackhole
10000: from 10.9.9.2 lookup 1011
20000: from all to 10.9.9.2 lookup 1011
32766: from all lookup main
32767: from all lookup default
90014: from all iif lo lookup 1011

ip route show table 1011:
default dev ovpnclient1 scope link
blackhole default proto static metric 254
10.9.9.0/24 dev ovpnclient1 proto static scope link

ip route show table 9910:
192.168.8.0/24 dev br-lan proto kernel scope link src 192.168.8.1

Expected behavior
After an OpenVPN ipv6 client session is established on the GL‑MT3000, the tunnel should forward traffic both directions and behave like other clients: LAN to ovpnclient1 to server to Internet, and server to ovpn to LAN. There should be no case where the tunnel connects but becomes completely unreachable for data.

Hi

We have tested this locally using MT3000 v4.8.1 and were unable to reproduce the issue. OpenVPN Client using IPv6 as the server address are able to establish connections and transmit data normally.

Please check the following:

  1. IP Masquerading: Ensure this is enabled.

  2. Logs: If the issue persists even after enabling masquerading, please export the device logs and send them to us via private message for further investigation.


How to export logs:

How to send private messages:

Hi will.qiu

Thanks for your reply and for testing. Unfortunately I couldn’t get it working while I was away a few days ago.

I just checked again. I updated the firmware via uboot, restored factory settings, and only configured the VPN, but the result is the same: no traffic is passing.

What I did

  1. After factory reset I opened the router web UI and set a new admin password and WiFi password

  2. Enabled IPv6 in the router settings

  3. Connected an Android phone to the router via USB and enabled USB tethering on the phone

  4. Connected the router to that USB shared network

  5. Uploaded the OpenVPN config and started the VPN

The logs show OpenVPN successfully connected over IPv6. I SSHed into the router and ran ping -I ovpnclient1 8.8.8.8 and got no reply and no packets were sent. ifconfig shows the interface exists but no traffic flows.

From today’s test I suspect the firmware fails to forward traffic from a USB network interface into the OpenVPN client and that is likely the root cause. I reviewed the logs closely and there is no useful information beyond the successful OpenVPN connection, then nothing.

Also, I really dislike posting on that forum. For some reason the site takes three to five minutes to load for me and often fails to load entirely.

Below are some lines from my .ovpn file for your reference

client dev tun proto udp6 remote resolv-retry infinite tls-version-min 1.3 nobind float cipher AES-256-GCM auth SHA512 keepalive 15 60 auth-user-pass remote-cert-tls server fast-io

I strongly suspect the combination of USB tethering plus IPv6 OpenVPN client is triggering this. Please try to reproduce it.

We believe that USB Tethering should not be the issue, as OpenVPN is able to establish a tunnel through it. Your current problem appears to be that traffic is unable to transmit between the tunnels.

Could you please provide your OpenVPN server and client configuration files (with public and private keys hidden/redacted)? This will allow our testing to more closely mimic your actual environment and help us further pinpoint the cause of the problem.

Additionally, it would be even more helpful for troubleshooting if you could share device access with us via GoodCloud, following the tutorial below:
Technical Support via GoodCloud - GL.iNet Router Docs 4

Please send the device MAC address and the Admin Panel password via private message so that we may access it.

Regarding the issue of the forum loading slowly, we use Cloudflare as our CDN, so in theory, this problem should not occur.

However, we will ask our team to investigate the matter to determine if there is an underlying issue and if improvements can be made.

I mean "support@gl-inet.com" not forum DMs.

Hi will.qiu

Thank you so much for trying to help me. I've sent an email to your support email and look forward to continuing our communication via email in the future.

Also, I would appreciate it if you could test the use case of the USB tethering mode I mentioned.

My further replies will be in your email, thank you.

Thank you for your update.
Our technical support team will continue to follow up on this issue via email through the ticketing system.