jpcap 配置方法,问题解决,模拟sniffer程序。(附JAVA程序,jar,dll包等环境)
博文链接 http://www.cnblogs.com/xckk/p/4609444.html
一、 Eclipse环境下安装与配置Jpcap
相关源程序、jpcap jar包,dll包,帮助文档。
已存放在百度云盘,链接如下:http://pan.baidu.com/s/1o6JxcIQ
也可在CSDN下载,链接如下:http://download.csdn.net/detail/hk276506076/8852913
1、下载安装winpcap
2、jpcap官方文件中lib包下,有两个文件,jpcap.dll和jpcap.jar。
jpcap.dll-->JAVA安装路径/jre1.6.0_06/bin (JRE目录)
jpcap.jar-->JAVA安装路径/jre1.6.0_06/lib/ext (JRE目录) 和 JAVA安装路径/jdk1.6.0_05/jre/lib/ext (JDK目录)
3、eclipse增加jpcap.jar包。windows->preferences->Java->Installed JRES-> select jdk and input edit button-->add external jars
添加jpcap.jar包,至此就算配置完成。配置中出现的问题在第二步中进行解决。
二、 配置Jpcap出现的问题
参照了几篇博文,链接如下 http://blog.csdn.net/fykhlp/article/details/6159195
有些可以解决,有些不行。在这里,反自己遇到的问题与解决方法列出来,供大家参考。
1、jpcap相关java类找不到。
虽然在JRE Libray库里加入了jpcap.jar库,但是还是提示找不到。把JRE 删掉再重新导入。
方法:右键点你的项目->properties->Java buildpath->remove,然后再导入
2、错误提示:"no dependence library",很可能是没装winpcap
3、最常见的 java.lang.UnsatisfiedLinkError:no jpcap in java.library.path。
错误提示是在java的library路径里找不到jpcap.dll。通过下面代码可以找一下library的path.
System.out.println(System.getProperty("java.library.path"));
发现路径已经包括了我的JRE/bin目录。还是不行。网上说的很多方法,但是我的工程里还是不行。
通过打印library的path.发现第一个路径是自己的JDK/bin目录。把jpcap.dll拷贝到JDK/bin下。问题解决了。至于为什么要这样,还不太清楚。
4、第3步解决后,出现java.lang.UnsatisfiedLinkError: jpcap.JpcapCaptor.getDeviceList()[Ljpcap/NetworkInterface 这种错误。
很大可能是jpcap.dll包和jpcap.jar包不兼容导致。在我的云盘里有兼容的包,请下载。http://pan.baidu.com/s/12k6M6
三、 Jpcap 测试程序,模拟sniffer。实现不同协议的抓包,写入文件和读文件。
已存放在百度云盘,链接如下:http://pan.baidu.com/s/1o6JxcIQ
也可在CSDN下载,链接如下:http://download.csdn.net/detail/hk276506076/8852913
源程序项目:test_jpcap2.rar.
main程序:MainConsole.java
秀才坤坤出品 博文链接 http://www.cnblogs.com/xckk/p/4609444.html
源程序模拟CSDN上一位朋友上传的资源,我进行了改进。http://download.csdn.net/detail/chuanhua_seu/3973925