pfsenseボックスでTUN OpenVPNサーバーを稼働させており、すべてのIPv4とIPv6のネットワークトラフィックがVPN経由でルーティングされています。Androidスマートフォンを接続して、外出先でPCをストリーミングできるようにMoonlightアプリを使用しようとしています。
VPNのネットワークは10.0.0.0/26です
自宅のネットワークは192.168.1.0/24です
Ubuntuを実行しているラップトップでVPNをテストしたところ、LANに問題なく接続できました。実際、エクスポートされたOpenVPN Connectの設定ファイルを使用しています。
Androidスマートフォンでも同じ設定を使って試しましたが、外部IPは自宅のアドレスとして表示され、LANデバイスにピングできて応答も返ってきますが、実際にはLAN内のどのデバイスにもアクセスできません。エクスポートツールの他の設定も試しましたが、やはりスマートフォンからは正しくLANに接続できません。妻のiPhoneでも試しましたが、こちらは問題なく動作しています。
他に私と同じ問題を経験した人はいますか? Androidの問題の可能性が高いと感じ始めています。OpenVPNの問題ではないかもしれません。
やあ、専門家ではないけど私の考えを言うと、Androidからピンは問題なくできているのにアクセスできないのは、DNSの問題かもしれません。OpenVPNの設定で"DNS Server enable"を確認して、LANのDNSサーバー(おそらくpfsenseのLANアドレス)を追加してみてください。
AndroidアプリのOpenVPNプロフィール設定の中で、ルーティング → ローカルネットワークのVPNバイパスが未チェックになっていますか?
全てのクライアントトラフィックをVPN経由に強制していますか?過去にAndroidでこれらのオプションに関して多くの問題を経験しました。
私も似たような問題を抱えていました。最終的には、私の4Gネットワークが原因だと考えました。Wi-Fiに戻ると問題なく動作しました。イギリスのCarrier(3)に問い合わせましたが、あまり助けにならず、おそらく解決しないでしょう。TCPを使った二つ目のVPNも作成しましたが、問題は解決しませんでした。違う設定を試した方が良いかもしれません。
DNSは問題ありません。接続中でもウェブサイトに問題なくアクセスできます。DNSが内部IPへの接続に関係するはずがありません。
残念ながら效果がありません。WireGuard VPNを試してみようと思います。
TCPに切り替えたら成功しました。ノートPCをスマホのホットスポット経由で接続し、UDPだと問題なく動作しましたが、スマホからPingはできても何にも接続できませんでした(ログインページが読み込まれ始める程度)。TCPに切り替えたら、スマホとノートPCの両方で正常に動作しました。