QBelt 客戶端成功連接,但因 QVPN 沒有填充 VPNNAT 鍊,導致無法連網

我的環境

  • NAS:QNAP TS453

  • QTS:5.2.9.3499

  • QVPN Service:3.3.1552

  • VPN協定:QBelt

  • Android QVPN 客戶端:1.8.11.0206

  • Android 15

  • 也在 Android 8 複現

問題描述

QBelt 客戶端能成功連線並完成認證,無任何錯誤。

客戶端能從設定的IP池取得有效的VPN位址(10.6.0.2),但完全沒有流量通過VPN通道

現象如下:

  • 無法透過 NAS 的區網IP位址存取 NAS。

  • 無法存取其他區網裝置。

  • 無法上網。

  • DNS查詢失敗,因為沒有IP連線能力。

  • 然而 QVPN 客戶端仍顯示**「連線成功」**。

這個問題在兩台不同的Android裝置及版本上完全相同。

已執行的調查

已在 NAS 上確認以下事項:

QBelt 介面存在

qtun
10.6.0.1/24
UP

客戶端獲得正確位址

10.6.0.2

路由表

路由表正確包含以下條目:

10.6.0.0/24 dev qtun
default via 192.168.1.1 dev eth0

因此:

  • 通道建立沒問題。

  • 認證沒問題。

  • 位址分配正常。

  • 路由也有設置。

iptables

FORWARD鏈裡沒有涉及 qtun 的規則。

更重要的是:

iptables -t nat -L

顯示:

Chain VPNNAT (1 references)

這個鏈中沒有任何規則

臨時解法

執行下列指令後立刻恢復全部VPN功能:

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

新增這條規則後:

  • 可以存取區網。

  • 可以上網。

  • DNS 正常。

  • QBelt 運作正常。

這強烈暗示 QVPN Service 並未自動填充 VPNNAT 鏈

預期行為

當 QBelt 啟用時,QVPN Service 應自動為設定的VPN子網路新增所需的 NAT/MASQUERADE 規則。

實際行為

VPN隧道已正確建立,但VPNNAT鏈保持為空,導致任何流量都無法從VPN介面出去。

問題

  1. 這是 QVPN Service 3.3.1552 的已知問題嗎?

  2. 在什麼情況下 QVPN 會未能填充 VPNNAT 鏈?

  3. 有沒有官方修正或臨時解法?

  4. 這個問題在新版中有修正嗎?


也請其他使用者協助確認,能否檢查你們的系統,當 QBelt 啟用時 VPNNAT 鏈是否被正確填充。在正常運作的系統中,我預期至少會有一條針對 QBelt 子網段的 MASQUERADE 規則。