1

VPNトラフィックを監視する必要があります。つまり、着信および発信VPNトラフィックを読み取る必要があります。

このため、独自のVPNクライアントを作成しようとしていますが、「android.net.VpnService」の動作例が見つかりませんでした。AndroidサンプルアプリケーションToyVpnを確認しましたが、動作していません。次の例外が発生します。 :

E/ToyVpnService(2302): Got java.net.PortUnreachableException: 
E/ToyVpnService(2302): Got java.net.SocketException: sendto failed: ECONNREFUSED (Connection refused)

また、「ユーザー名の設定方法」についてはどこにも記載されていません。

非表示のAPIを使用できるとのことですが、これにはルートアクセスが必要です。現在、ルート化された電話はありません...

この(非表示のAPI)アプローチについて質問したいのは、非表示のAPIを使用するアプリは、独自のVPNクライアントを作成するのか、それともAndroidのデフォルトクライアントを使用するのかということです。また、Androidのデフォルトのクライアントを使用している場合でも、着信トラフィックと発信トラフィックを読み取ることはできますか?

「android.net.VpnService」を使用して独自のVPNクライアントを作成するためのガイドラインまたは実用的な例を探しています。

4

2 に答える 2

4

VPN トラフィックを監視する必要があります。つまり、着信および発信 VPN トラフィックを読み取る必要があります。

これがバックドアをハッキングした独自の VPN 実装でない限り、明らかなセキュリティ上の理由から、これは不可能であるべきです。

次の例外が発生しています

私の推測では、ToyVPN サーバー コンポーネントを実行していないか、テスト環境からアクセスできないと思います。ただし、ToyVPN で遊んでからかなり時間が経ちましたが、私はそのコード ベースの専門家ではありません。

また、「ユーザー名の設定方法」はどこにも記載されていません。

ToyVPN に「ユーザー名」の概念があることを思い出しません。

非表示の API を使用できると書かれていますが、これにはルート アクセスが必要です。

非表示の API は root アクセスとは関係ありません。

独自の VPN クライアントを作成するか、Android のデフォルト クライアントを使用しますか?

言及しているアプリの作成者に尋ねる必要があります。

また、Android のデフォルト クライアントを使用している場合でも、着信トラフィックと発信トラフィックを読み取ることは可能ですか?

それらが生成する「着信および発信トラフィック」のみ。明らかなセキュリティ上の理由から、他のアプリの VPN トラフィックをスパイすることはできません。

于 2012-11-05T11:52:50.523 に答える
0

VPN トラフィックを監視する必要があります。つまり、着信および発信 VPN トラフィックを読み取る必要があります。

VPN には着信および発信ストリームがあり、着信および発信トンネル ストリームを実装する必要があるため、これはあいまいな質問です。

従来の VPN では、両方を調整する必要があります。一方では VPN サーバーへのトンネル接続を設定し、VpnService のインターフェースの入力ストリームをトンネル出力ストリームに書き込み、他方ではトンネル応答をインターフェース出力ストリームに書き戻します。

マークが彼の回答で述べていることとは反対に、生のネットワーク リクエストを VpnService インターフェイスの入力ストリームとして取得します。ネットワークインターフェイスを介して通信される生のバイトを取得しているため、実際には IP パケットとその TCP または UDP ペイロードを解析する必要があることに注意してください。

于 2013-11-28T16:55:31.273 に答える