特定のネットワークデバイスドライバーの受信機能をテストする際に、ネットワーク上で特別なパケットを送信する必要があります。rawソケットを開いて、バイトをプッシュする必要があることはわかっています。このレベルで再生できる有名な例(C、perlなど)のコードはありますか?
(後で追加)プラットフォーム固有ではない回答をお勧めします。それらはすべての人にとって最も役立つでしょう。
特定のネットワークデバイスドライバーの受信機能をテストする際に、ネットワーク上で特別なパケットを送信する必要があります。rawソケットを開いて、バイトをプッシュする必要があることはわかっています。このレベルで再生できる有名な例(C、perlなど)のコードはありますか?
(後で追加)プラットフォーム固有ではない回答をお勧めします。それらはすべての人にとって最も役立つでしょう。
パケットのドキュメントを参照してください。基本的に、SOCK_RAWまたはSOCK_DGRAMを使用してソケットを作成し、通常のソケットI/Oを使用してソケットに書き込みます。ただし、送信するデータは、ほとんどのネットワーク相互運用に必要なヘッダーを自動的に取得するのではなく、直接回線に配置されます。
http://www.codeproject.com/KB/IP/sendrawpacket.aspx
これを支援できる可能性のある既存のプロジェクトがすでにあります。
http://tcpreplay.synfin.net/wiki/tcprewrite#RewritingLayer2 とhttp://tcpreplay.synfin.net/をチェックしてください。
独自のパケットを生成するツールを探しているようですが、Scapyはセキュリティ業界(ペンテスターなど)でよく使用されるツールです。
例は思いつかない。ただし、UDPソケットを任意のIPアドレスに開いて、データの書き込みを開始できるはずです。そのUDPまたはこれが機能しないことを確認してください。
ここSecurity-Freakに良いCの例があることがわかりました。これは、柔軟性のために少し変更するだけで済みます。他の言語でもっと多くの答えがあることを願っています。