您当前位置: 首页 语言学习 富豪棋牌金牛区

富豪棋牌金牛区

富豪棋牌金牛区

类型: 语言学习 版本: V8.3

大小: 1,038.1 时间: 2025-11-21

推荐语
推荐语
富豪棋牌金牛区 583cc黑桃棋牌Jpcap文件扩展包使用方法首先,使用Jpcap的几个小问题:我们为什么需要Jpcap?什么是Jpcap?Jpcap的工作原理是什么?怎么配置Jpcap(Jpcap的安装)?Jpcap使用步骤Jpcap有啥特性? 一。我们为什么需要Jpcap?Java的.net包中,给出了传输层协议TCP...
应用介绍

Jpcap文件扩展包使用方法

首先,使用Jpcap的几个小问题:
我们为什么需要Jpcap?
什么是Jpcap?Jpcap的工作原理是什么?
怎么配置Jpcap(Jpcap的安装)?
Jpcap使用步骤
Jpcap有啥特性?
 
一。我们为什么需要Jpcap?
Java的.net包中,给出了传输层协议TCP和UDP有关的API,用户只能操作传输层数据,要想直接操作网络层{比如自己写传输层数据报(自己写传输层包头),或者自己写好IP数据包向网络中发}则是无能为力的。而JPCAP扩展包弥补了这一点,使我们可以支持从网卡中接收IP数据包,或者向网卡中发送IP数据包。
 
 
二。什么是Jpcap?Jpcap的工作原理是什么?
Jpcap实际上并非一个真正去实现对数据链路层的控制,而是一个中间件,JPCAP调用wincap/libpcap,而给JAVA语言提供一个公共的接口,从而实现了平台无关性。
 
 
三。怎么配置Jpcap(Jpcap的安装)?  
Jpcap下载地址:  http://netresearch.ics.uci.edu/kfujii/Jpcap/doc/download.html
下载后,直接安装,安装,将生成的jar文件和动态库dll文件分别拷到
%JAVA_HOME%libext 和%JAVA_HOME%jrein  目录下。
因为Jpcap是调用的wincap,所以必须将动态库放入jre/bin下。 将jar放入ext下,则无需在项目中再加载该jar包
 
四。Jpcap使用步骤
1.首先,获得所有网卡列表
NetworkInterface[]devices=JpcapCaptor.getDeviceList();

 

2.通过网卡,打开一个捕捉器。//openDevice(NetworkInterfaceintrface,intsnaplen,booleanpromics,intto_ms);JpcapCaptorcaptor=JpcapCaptor.openDevice(device[index],65535,false,20);

 

 各个参数意义:
 intrface需要监听的网卡
 snaplen每次捕获的数据包最大长度(设置为IP包最大长度即可) 
promics是否过滤(Mac地址不是当前网卡的IP数据包)
to_ms超时时间
 

3.通过捕捉器捕获数据:
    有两种方式:
3.1.回调方法
3.1.1.实现一个方法处理器接口的类PacketReceiver,并将该类的一个对象,注册到捕获器中。(回调方法的实现,其实就是监听器模型)
3.1.2.将消息处理器(PacketReceiver)注册到捕获器(JpcapCaptor)有两种方式
 
 
captor.processPacket(intnumber,PacketReceiverreciver);//1loopPacket(intnumber,PacketReceiverreciver);//2

 
参数意义:
第一个参数为需要捕获的IP包个数,-1表示一直捕获。
第二个参数表示需要注册的处理器。 
 
processPacket()和loopPacket()的区别:
Tutorial中给出的说法为:
UsuallyyoumightwanttouseprocessPacket()becauseitsupportstimeoutandnon_blockingmode,whileloopPacket()doesn't.

可是,processPacket()和loopPacket()两个方法明明都是通过回调方法实现的,回调方法使用监听器模型,不就是在某个模块被调用的时刻不确定,才使用的嘛?如果是这样,那么根本就没有block存在啊?此处还请高手指点。

另外,自己做的测试中:使用loopPacket()的时候,会一直有回调,但是使用processPacket()程序直接执行完就结束了,对捕捉器设置了nonblock为flase也没用?
 
3.2.主动获取。
通过捕获器的getPacket() 可以主动的,一个数据包一个数据包的获取。
 
 比较:

主动获取,可以每次需要处理数据包的时候,自己去主动获取。然后写出处理逻辑。但是因为不知道何时去产生数据包,而一直去调用getPacket()的话,无疑效率是很低的。(主动获取,不管有没有包,都会一直执行循环去获取)
通过回调方法,可以在产生需要的数据包时,调用我们的处理逻辑,无疑更优美。


 

五。使用Jpcap能做的事
1.Jpcap是直接抓取经过数据链路层的数据包。因此可以自己写IP数据包直接发送给数据链路层。
2.Jpcap会对抓取到的数据包进行一定程序的解析,根据数据包内容,将数据包封装为对应的对象()。
3.根据用户设定的信息,过滤数据包(其实就是在解析的时候,对不需要的数据直接丢弃,不解析)
4.Jpcap只是直接从数据链路层上读取数据,并向数据链路层中发送数据,因此,Jpcap并不能操作其他程序从数据链路层中读数据或者向网卡中发送数据。(IP层协议程序)

 
因此,我们可以使用Jpcap:
1.监控网络内容
2.自定义传输层乃至网络层网络协议(net包中,我们只能自定义引用此协议)

 

 正在进行:使用Jpcap,进行ARP欺骗,从而使整个子网的IP包都发给我,于是,可以监控整个局域网。

AVA语言虽然在TCP/UDP传输方面给予了良好的定义,但对于网络层以下的控制,却是无能为力的。JPCAP扩展包弥补了这一点,jPcap是一个可以让java工作在链路层的类库;当然,它底层还是使用了本机API通过Jini调用,在javaAPI中得到数据。JPCAP实际上并非一个真正去实现对数据链路层的控制,而是一个中间件,JPCAP调用wincap/libpcap,而给JAVA语言提供一个公共的接口,从而实现了平台无关性。今天足球赛事

应用信息
相关版本
相关推荐
同一开发者
本类最新
相关专题
相关文章
用户评论
兼职平台客服

兼职平台客服

2025/11/03 08:49更新

劲牛店管家是一款为店铺服务的管理软件,拥有非常强大的农资进销存管理服务,拥有电脑、手机端软件,配合使用,方便管理!劲牛店管家介绍支持为没有条码的商品自动生成一个...

广电宽带 网友 mnop789 苹果赚是真的吗
苹果赚是真的吗

支持 ( 90 ) 盖楼(回复)

广电宽带 网友 mnop789 现在男生学什么手艺赚钱
现在男生学什么手艺赚钱

支持 ( 141 ) 盖楼(回复)

广电宽带 网友 mnop789 打新的股票怎么赚钱
打新的股票怎么赚钱

支持 ( 20 ) 盖楼(回复)

广电宽带 网友 mnop789 游派试玩赚钱平台
游派试玩赚钱平台

支持 ( 62 ) 盖楼(回复)

广电宽带 网友 mnop789 试玩赚钱安全吗
试玩赚钱安全吗

支持 ( 119 ) 盖楼(回复)

广电宽带 网友 mnop789 九五至尊95055棋牌
九五至尊95055棋牌

支持 ( 52 ) 盖楼(回复)

广电宽带 网友 mnop789 刷滴滴打车怎么赚钱吗
刷滴滴打车怎么赚钱吗

支持 ( 86 ) 盖楼(回复)

广电宽带 网友 mnop789 合约爆仓的钱谁赚走了
合约爆仓的钱谁赚走了

支持 ( 129 ) 盖楼(回复)

广电宽带 网友 mnop789 棋牌室经营
棋牌室经营

支持 ( 28 ) 盖楼(回复)

广电宽带 网友 mnop789 跑滴滴快车能赚钱吗
跑滴滴快车能赚钱吗

支持 ( 33 ) 盖楼(回复)

广电宽带 网友 mnop789 035棋牌怎么投诉
035棋牌怎么投诉

支持 ( 125 ) 盖楼(回复)

广电宽带 网友 mnop789 20元可提现的抢庄牛牛
20元可提现的抢庄牛牛

支持 ( 74 ) 盖楼(回复)

广电宽带 网友 mnop789 解压宝盒游戏试玩
解压宝盒游戏试玩

支持 ( 47 ) 盖楼(回复)

广电宽带 网友 mnop789 850棋牌手机版官网
850棋牌手机版官网

支持 ( 70 ) 盖楼(回复)

广电宽带 网友 mnop789 主播怎么挣钱
主播怎么挣钱

支持 ( 111 ) 盖楼(回复)

广电宽带 网友 mnop789 友趣棋盘捕鱼提现游戏
友趣棋盘捕鱼提现游戏

支持 ( 22 ) 盖楼(回复)

广电宽带 网友 mnop789 16网上兼职打字员日结
16网上兼职打字员日结

支持 ( 51 ) 盖楼(回复)

广电宽带 网友 mnop789 怎样才能赚好多钱
怎样才能赚好多钱

支持 ( 200 ) 盖楼(回复)

广电宽带 网友 mnop789 送车公司注册
送车公司注册

支持 ( 177 ) 盖楼(回复)

广电宽带 网友 mnop789 清风棋牌下载安装
清风棋牌下载安装

支持 ( 109 ) 盖楼(回复)

查看更多评论

富豪棋牌金牛区

语言学习 1,038.1

下载