問題タブ [tun]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 接続性をチェックする際にAndroidをだます方法は?
Androidの仮想ネットワークデバイスとしてtunを使用してネットワークアプリを実行しています。eth0(WLANの場合)やrmnet0(3G / GPRSの場合)などの他の使用可能なインターフェイスを閉じますが、tun0デバイスを存続させ、ルートテーブルにルールを追加します
ip route add default dev tun0
そのため、すべてのインターネット転送をtunデバイスにリダイレクトできます(ここで行っているのはOpenVPNと同じです)。そして、他のIPにpingを実行するとデータが転送されるのを見ました。ブラウザやその他のアプリは正常に動作します。
ただし、一部のAndroidアプリは、netwrokにアクセスする前にConnectivityManagerによって接続を確認します。WIFIと3G/GPRSを閉じると、ConnectivityManagerは接続がないと見なし、それらのアプリはネットワークにアクセスできなくなります。
だから私の質問は:
android ConnectiviyManagerをだまし、(どのタイプでも)利用可能な接続がまだあると信じさせる方法は?
python - Linux: インターフェイスで着信パケットをシミュレートする方法は?
特定のソフトウェア インターフェイスで着信トラフィックをシミュレートするにはどうすればよいですか? この必要性の理由は、Ether レベルと IP レベルの間にいくつかのソフトウェア インターフェイスがあり、ネットワーク スタックに沿って独自の L2.5 ヘッダーを解析するためです。
私はTAPを見ていましたが、役に立ちそうです。しかし、この TAP インターフェイスを独自のソフトウェア インターフェイスにチェーンして、パケットが期待されるネットワーク スタックを通過する方法がわかりません。私のTAPの理解は間違っているのでしょうか?
ありがとう、
c - tun/tap インターフェイスが開いているかどうかを知る方法はありますか?
tun インターフェイス tun0 を使用してアプリケーションを作成しています。インターフェイスを介してパケットを正常に送受信できました。のように tun インターフェイスがいつ開かれたかを知る方法はありますifconfig tun0 up
か?
インターフェイスがアクティブな場合にのみ、基になるデバイスの初期化の一部を実行したいと考えています。(後で追加)http://backreference.org/2010/03/26/tuntap-interface-tutorial/の例に従っています
c - タップインターフェイスから送信されたブロードキャストパケットが受信されない
ここからsimpletunに似たプログラムを作っています。
アプリケーションは、UDPブロードキャストをTapインターフェイスに送信します。
タップインターフェイス(simpletunと同様)でリッスンしているプログラムは、パケットを受信し、ブロードキャストとして再度エコーします。
Wiresharkで両方のパケットを確認できますが、アプリケーションはそれを受信しません。カーネルがそれらをドロップしているようです。
同様のパケットが別のマシンから送信された場合。それはうまくいきます。
tun / tapコード:-
上記のコードは、rawソケットの読み取りと書き込みを使用して別のマシンから実行すると、うまく機能します。(ethヘッダーなし)。
アプリケーションコードの受信:-
android - デフォルト GW に直接接続するローカル インターフェイスの IP を取得するにはどうすればよいですか
-環境-
VPN接続(OpenVPN)
・デフォルトゲートウェイをVPNサーバーIPに変更
・VPN接続用仮想インターフェース(tunXX)はデフォルトゲートウェイに直接接続インターフェイスとデフォルト ゲートウェイ
この環境で、Android APIを使ってインターフェース名に関係なく「10.8.0.14」を知りたい。
以下のデフォルトルートIPアドレスを取得する方法しか見つかりませんでした
でも、ソケットは使いたくない
linux - ip tuntap コマンドを使用して、インターフェイスと /dev/net/tun デバイスをタップします。
次のように、タップインターフェイスを作成するために使用ip tuntap
しています。
その後、インターフェイスをセットアップし、一般的な IP コマンドでアドレス指定します。その後、インターフェースが起動し、単純な でアドレス指定されていることがわかりますifconfig
。
さて、先生から、tap インターフェイス (この場合は tap0 という名前) を作成することで、/dev/net/tap0
ノードが見つかり、書き込みや読み取りができるようになると言われました。しかし、私はそれを見つけることができません。私は「ただ」持ってい/dev/net/tun
ます。
この tun ノードを処理する必要がありますか、それとも本当に tap0 ノードを使用する必要がありますか?
windows - win32、wmi モジュールを使用してインターフェイスのプロパティを変更したい
私は使っているwmi module
インターフェイス内のプロパティを変更しますが、そこのインターフェイスでは変更されません
IP アドレス、ゲートウェイ、サブネット マスクを割り当てることさえできません。
私は試した
助けてください。
Windows環境を利用しています。
windows - Windows 7 のタップ アダプター
Windowsでpythonを使用してトンネルプログラムを作成しようとしています。手順は次のとおりです。 1 - tun/tap デバイスをダウンロードしました 2 - WMI を使用して IP アドレス要素を変更できるようにしました
私は今問題に直面しています。WMI を使用して変更すると、Tun\tap に「IPEnabled = False」と表示されます。ip、defaultgateway、サブネットマスクを指定しても、インターフェースは何も変更されません。ただし、同じコマンドを適用すると、ワイヤレス インターフェイスが変更されます。
何がうまくいかないのですか?これが最善の方法ですか?
前もって感謝します。
sockets - NON-BLOCKING tun/tap ファイル記述子の read() で EAGAIN エラーが発生する
ノンブロッキングの tun/tap ファイル記述子から IP パケットを読み取りたいので、ノンブロッキングとしてtunfd
設定しtunfd
、libevent に READ_EV イベントを登録します。
イベントがトリガーされると、最初の 20 バイトを読み取って IP ヘッダーを取得し、次に残りを読み取ります。
しかし、read(tunfd, buf+20, ip_len-20)
EAGAIN エラーが発生した場合、実際には完全なパケットがあるはずなので、いくつかのバイトがあるはずですが、なぜこのようなエラーが発生するのでしょうか?
tunfd はノンブロッキング モードまたは libevent と互換性がありませんか?
ありがとう!