QBelt-Clients verbinden sich erfolgreich, haben aber keine Netzwerkverbindung, weil QVPN die VPNNAT-Chain nicht füllt

Meine Umgebung

  • NAS: QNAP TS453

  • QTS: 5.2.9.3499

  • QVPN Service: 3.3.1552

  • VPN-Protokoll: QBelt

  • Android QVPN Client: 1.8.11.0206

  • Android 15

  • Ebenfalls reproduziert auf Android 8

Problembeschreibung

QBelt-Clients verbinden sich erfolgreich und die Authentifizierung wird ohne Fehler abgeschlossen.

Der Client erhält eine gültige VPN-Adresse aus dem konfigurierten Pool (10.6.0.2), aber es fließt kein Traffic durch den VPN-Tunnel.

Zu den Symptomen gehören:

  • Zugriff auf das NAS per LAN-IP-Adresse nicht möglich.

  • Kein Zugriff auf andere LAN-Geräte möglich.

  • Kein Zugriff auf das Internet möglich.

  • DNS-Anfragen schlagen fehl, weil keine IP-Konnektivität besteht.

  • Der QVPN-Client meldet dennoch „Erfolgreich verbunden“.

Das Problem tritt identisch auf zwei verschiedenen Android-Geräten und Android-Versionen auf.

Bisherige Untersuchungen

Folgendes wurde auf dem NAS überprüft:

QBelt-Schnittstelle existiert

qtun
10.6.0.1/24
UP

Client erhält richtige Adresse

10.6.0.2

Routing-Tabelle

Die Routing-Tabelle enthält korrekt:

10.6.0.0/24 dev qtun
default via 192.168.1.1 dev eth0

Daraus folgt:

  • Tunnelaufbau funktioniert.

  • Authentifizierung funktioniert.

  • Adressvergabe funktioniert.

  • Routing ist vorhanden.

iptables

In der FORWARD-Chain gibt es keine Regeln, die qtun betreffen.

Wichtiger noch:

iptables -t nat -L

zeigt:

Chain VPNNAT (1 references)

aber keine Regeln in dieser Chain.

Temporärer Workaround

Der folgende Befehl stellt die volle VPN-Funktionalität sofort wieder her:

iptables -t nat -A VPNNAT -s 10.6.0.0/24 -o eth0 -j MASQUERADE

Unmittelbar nach dem Hinzufügen dieser Regel:

  • LAN-Zugriff funktioniert.

  • Internet-Zugriff funktioniert.

  • DNS funktioniert.

  • QBelt arbeitet normal.

Dies spricht stark dafür, dass der QVPN Service die VPNNAT-Chain nicht automatisch befüllt.

Erwartetes Verhalten

Beim Start von QBelt sollte QVPN Service die erforderlichen NAT/MASQUERADE-Regeln für das konfigurierte VPN-Subnetz automatisch setzen.

Tatsächliches Verhalten

Der VPN-Tunnel wird korrekt aufgebaut, aber die VPNNAT-Chain bleibt leer, wodurch jeglicher Traffic vom VPN-Interface verhindert wird.

Fragen

  1. Ist dies ein bekanntes Problem in QVPN Service 3.3.1552?

  2. Unter welchen Bedingungen befüllt QVPN die VPNNAT-Chain nicht?

  3. Gibt es einen offiziellen Fix oder Workaround?

  4. Ist das in einer neueren Version behoben?


Ich würde mich über eine Rückmeldung von anderen Nutzern freuen, ob sie ihre Systeme überprüfen und bestätigen können, ob die VPNNAT-Chain bei aktiviertem QBelt korrekt befüllt wird. Auf einem funktionierenden System würde ich mindestens eine MASQUERADE-Regel für das QBelt-Subnetz erwarten.