2009-03-16 19 views

答えて

5

libpcapをラップするJava APIを使用します。

libpcapには、生のパケットを送信できる「注入」機能があります。 (もちろん、パケットを送信しようとしているマシンには、ルートまたは管理者の特権が必要です。)jNetPcapjpacpなど、利用可能ないくつかのJava APIがあります。たとえば、jpcapにはclass that allows you to send any packetがあります。

+0

リンクは機能しません http://netresearch.ics.uci.edu/kfujii/jpcap/doc/javadoc/jpcap/JpcapSender.html –

0

これは、別のライブラリを必要とするものではありません。これは通常、Winsockやバークレーソケットのような、プラットフォーム上の標準的なソケットライブラリの一部です。関連するオプションは、多くの場合、ASOCK_RAWと呼ばれます。

0

Windows XP SP2(おそらく、Vistaを含む上位バージョンだが、私はそれは確かではない)、raw sockets are disabled。これらの制限は、UDPソケットの場合よりもTCPソケットの場合に比べていくぶん厳密ではないため、何をしようとしていてもやることができます。そのリンクには、あなたができることとおそらくあなたを助ける方法についての情報が含まれています。

+0

これはLinux環境で実行するために探していました。 – Javamann

-2

あなたは、UDPパケットをスプーフィングするJavaプログラムを書くことを目指しているなら、Mikeが提案したようにjNetPcapまたはjpcapを使用します。あなたがちょうど(プログラムを書いていない)偽装したいのであれば、私はwiresharkを試してみるでしょう。

+2

スプーフィングによって、彼はキャプチャだけでなくパケットを作成することを意味します。 WiresharkにはPacket Builderはありませんが、JPcapとJNetPcapはこの操作をサポートしています。 – h3xStream

関連する問題