問題タブ [winpcap]
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.
c++ - winpcapでキャプチャされたパケット、レイヤ2フレーム、またはレイヤ3パケットの単位は何ですか。
ネットワークトラフィック検査プログラムを開発しているときに疑問に思うだけですが、コンテキストは関係ありません。
visual-studio - 誤った参照PcapDotNet.?.dll
こんにちは私はPcapDotNetdllを使おうとしましたが、プロジェクトへの参照を追加できません。それがどのdllであるかは関係ありません。PcapDotNet.Core.dll、PcapDotNet.Base.dllなど。このリファレンスの近くに黄色の感嘆符があり、このdllのメソッドを使用できません。多くの場合、「PcapDotNet.Coreを使用します。」も下線が引かれ、コンパイラは次のように表示します。「タイプまたは名前空間の名前'Core'は名前空間'PcapDotNet'に存在しません(アセンブリ参照がありませんか?)」通常追加できる別のdll。
何か案は?
filter - WinPcap で自分のパケットを無視するには?
WinPcap 経由でパケットを挿入すると、その瞬間にキャプチャされます。パケットをキャプチャしたくありません。魔女は自分で注射されました。最も簡単な方法は何ですか?
sockets - ブラウザに依存しない方法で、ユーザーがアクセスしている Web サイトを確認する
データベースに存在する Web サイトにアクセスするたびに、Web サイト固有の情報をユーザーに通知できるアプリケーションを構築しようとしています。これは、ブラウザーに依存しない方法で行う必要があります。これにより、ユーザーが Web サイトにアクセスするときに常に情報が表示されます (ユーザーが Web サイトにアクセスするために使用しているブラウザーやその他のツールに関係なく)。
私の最初の (部分的に成功した) アプローチは、System.Net.Sockets.Socket クラスなどを使用してデータ パケットを調べることでした。残念ながら、このアプローチは、ユーザーが管理者権限を持っている場合にのみ機能することがわかりました。そしてもちろん、それは私が望んでいることではありません。私の目標は、ユーザーがすぐに使用できる比較的単純なプログラムを 1 つインストールできるようにすることです。
この後、代替案を探し、WinPcap とその .NET ラッパーに関する多くの情報を見つけました (すでに c# .NET をプログラミングしていると言いましたか?)。しかし、WinPcap を使用すると、これをユーザーの PC にインストールする必要があり、いくつかの dll ファイルとコードを参照するだけの方法がないことがわかりました。インストーラーの前提条件として WinPcap を含めることは既に検討しましたが、これも面倒です。
まあ、簡単に言えば。アプリケーションで、ユーザーが現在アクセスしている Web サイトを知りたいです。ネットワークのデータ パケットを確認する必要があると思いますが、これに対する適切な解決策が見つかりません。私のアプリケーションは C# .NET (4.0) でビルドされています。
c - raw ソケットと WinPcap を使用して HTTP リクエストを送信する
プロジェクトの一環として、HTTP リクエストを含む IP パケットを Google に送信しようとしています。Winpcap ライブラリと VC++ を使用しています。現在、TCP 3 ウェイ ハンドシェーピング パケットは完了していますが、TCP ACK パケットを送信した後、実際の HTTP 要求パケットを送信することができません。Wireshark を使用してパケットをキャプチャすると、このパケットは「再構成された PDU の TCP セグメント」とマークされます。プロトコル列も「HTTP」ではなく「TCP」です。どうしたの?この方法で HTTP パケットを送信するにはどうすればよいですか?
c# - 元の送信元アドレスを維持したまま、UDP パケットを複数の IP に転送する
固定 IP:Port に送信された UDP パケットを介してデータを受信する動作中のシステムがあり、プログラム (ある種のプロキシ?) を使用して、それらのパケットのコピーを新しい IP:Port (またはIP:ポート、ただしすべてプログラムと同じ LAN 内)。
コピーされたパケットが元のパケットと同じ送信元 IP アドレスを持つ必要があるため、見た目ほど簡単ではありません。
私の調査では、PCap.Net (WinPCap .NET ラッパー) が有用であることがわかりました。これは、Packet を最初から構築でき、すべてのアドレス フィールドの変更をサポートしているためです。パケットをキャプチャしてビルドすることができました。しかし、なんだか目的地に着いていない(!?)。それらを送受信するために別の PacketCommunicator を使用する必要がありますか?
とにかく、質問は PCap.Net に完全に関連しているわけではありませんが、私の目的を達成するための別の方法を知ることです。無料アプリで?商用アプリケーション?オープンソースのサンプル? 他に使用するライブラリはありますか?
私のシステムは Windows ベースです (ここでは Linux は利用できません)。また、C# (.NET) の経験があります (NET バインディングが利用できない場合、C++ ライブラリは使用できません)。
助けてくれて本当にありがとうございます
c++ - Wincap キャプチャ フィルタリング式の構文
IPアドレスでtcpサーバーポートをフィルタリングするための構文をどのように指定しますか?
c++ - libpcapとwinpcapの関数は同じ名前ですか?
libpcapとwinpcapの関数は同じ名前ですか?そうでない場合、どのような名前が異なりますか、またはそれらの大部分は異なりますか?
また、libpcap ++をwinpcapに使用できますか?
perl - Net::Pcap から HTTP パケットを再構築するにはどうすればよいですか?
Net::Pcap
モジュールを使用して、このフィルターでパケットをキャプチャしています。
Net::Pcap イベント ループ内で、コールバック関数を使用します。
次のmy_callback
ようになります。
HTTP パケットを 1 つのパケットに組み立てて、そのヘッダーを抽出するにはどうすればよいですか?
c# - C# でネットワーク インターフェイス名を取得する
wPCAP ライブラリを使用するプログラムを作成しています。インターフェイス名のリストを取得することができました:
\Device\NPF_{A9734063-CA83-4D91-A35B-CC727749256A ...
ここで私の質問は次のとおりです。これがどのインターフェースであるかをどのように知ることができますか? その名前のインターフェイスの IP を取得しようとしています。
関数を試してみましたNetworkInterface.GetAllNetworkInterfaces()
が、これらのクラスでは「読み取り可能な」名前しか見つかりませんでした。\Device... の名前は見つかりませんでした。
ありがとうございました!
イヴァン
編集:「\Device\NPF_...」という名前のデバイスの IP アドレスを取得する必要があります。どうすればこれを達成できますか?