Jpcap (Java package for libpcap)
(c) 2000 Keita Fujii
Jpcap はJavaからLAN上を流れるパケットの受信と任意のIPパケットの送信を可能とするJavaクラスパッケージです。
このパッケージはlibpcapとRaw Socket APIを使用します。現在、FreeBSD 3.x, Linux RedHat6.1, Solaris, Windows 2000上での動作を確認しています。
対応プロトコルは、イーサネット, IPv4, IPv6, ARP/RARP, TCP, UDP, ICMPv4です。
What's New
- 9/14/00 Jpcap ver.0.03をリリース。ARP/RARP パケットをサポート。その他バグフィックス
- 7/29/00 Jpcap ver 0.02をリリース。MS Windows with WinPcapをサポート。
ダウンロード
For Windows: jpcap.zip
For UNIX: jpcap.t.ar.gz
インストール方法
<Windows9x/NT/2000>
- JDK 1.2以上をインストールします。
- libpcapのWindows移植版であるWinPcapのホームページからNDIS packet capture driverをダウンロードして
インストールします。- jpcap.zipをダウンロードして、適当なフォルダに展開します。
- Jpcap.dllをシステムフォルダ(\Windows\か\Winnt\system32)、またはパスの通っているフォルダに
コピーします。- jpcap.jarを\jdk1.?\jre\lib\extにコピーします。
<UNIX>
- 各プラットホームで利用可能な最新のJDKをインストールします。
- libpcapをインストールしていない場合はこちらからダウンロードしてインストールします。
- jpcap.tar.gzをダウンロードして展開します。
- jpcapディレクトリに移動し、Makefileを編集します。
- makeを実行します。
もし "structure has no member named `sa_len'" というエラーがでてコンパイル出来ない時は、
Jpcap_sub.hの "#define HAVE_SA_LEN"の1行をコメントアウトしてください。- 出来上がったlibjpcap.soを
JDK1.2の場合
Javaのインストール先/jre/lib/extにコピーします。
JDK1.1の場合
Javaのインストール先/lib/プロセッサ名(i386)/スレッドライブラリ名(green_thread)にコピーするか、
環境変数LD_LIBRARY_PATHで設定したパスに置いてください。# Linux, FreeBSD, Solarisでコンパイルしたlibjpcap.soを同梱しておきます。それらを適切なディレクトリに
# コピーするだけで動作するかもしれませんが、保証はしません。
ドキュメント
Readme(英語)
インストール方法などが書いてあります。APIマニュアル
javadocで生成したjpcapパッケージ内の全クラスのAPIマニュアルです。サンプルプログラム
tcpdumpライクなプログラムです。
JpcapDumper
Jpcapを用いたグラフィカルなパケットキャプチャソフトです。
こちらからダウンロードできます。
リンク
LBNL's Network Research Group (libpcap, tcpdump)
libpcap, tcpdumpの開発元です。tcpdump.org
最新のlibpcapとtcpdumpを配布しているページです。WinPcap
libpcapのWindows移植版です。Ruby/pcap
Ruby言語でpcapを扱うためのライブラリです。