用JAVA抓包何不用JPCAP呢
JPCAP:>
import javanetInet4Address;
import javanetInetAddress;
import javanetURL;
import javautilArrays;
import jpcapJpcapCaptor;
import jpcapJpcapSender;
import jpcapNetworkInterface;
import jpcapNetworkInterfaceAddress;
import jpcappacketEthernetPacket;
import jpcappacketICMPPacket;
import jpcappacketIPPacket;
import jpcappacketPacket;
public class JpcapTip {
public static void main(String[] args) throws Exception {
args = new String[2];
args[0]="1";
args[1]="22018112443";
if (argslength < 2) {
Systemoutprintln("Usage: java Traceroute <device index (eg, 0, 1)> <target host address>");
Systemexit(0);
} // initialize Jpcap
NetworkInterface device = JpcapCaptorgetDeviceList()[IntegerparseInt(args[0])];
JpcapCaptor captor = JpcapCaptoropenDevice(device, 2000, false, 5000);
InetAddress thisIP = null;
for (NetworkInterfaceAddress addr : deviceaddresses)
if (addraddress instanceof Inet4Address) {
thisIP = addraddress;
break;
}
// obtain MAC address of the default gateway
InetAddress pingAddr = InetAddressgetByName("(">
wireshark是基于winpcap或者libpcap的应用软件。如果你想自己开发抓包类的,应该用winpcap的api之类的。winpcap网站上faq提到这个问题了
Q-12: Does WinPcap work with Java
A: We do not directly support Java However you can find a Java wrapper at netresearchicsuciedu/kfujii/jpcap/doc/indexhtml 和 jnetpcapcom /
我曾经做过类似的系统,也是采用Java实现的,在编程中用到第三方软件包---Jpcap,因为Jpcap为实现流量监控和数据包(TCP包,UDP包,IP包,ICMP包等)提供一系列的接口和类,具体详情请E-mail:xhwdy26@163com,本人可以提供源码,但源码需要修改一下,也可以在网上搜索Jpcap的DEMO,里面也有相关的代码。
不会吧?我使用了源地址和目的地址不同啊??一个是内网的一个是外网的啊~~
是你自己在打印目的地址和源地址时调用的都是同一个属性吧?
下面是我打印的结果
以上就是关于求一个用java编写的能读取 .cap文件的类全部的内容,包括:求一个用java编写的能读取 .cap文件的类、有谁知道怎样使用java编写ping程序、java 模拟traceroute程序 能得到跳数 时间 经过路由ip 求高手指点 。。。 。。。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)