问题标签 [jnetpcap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 未找到 Native Lcom/slytechs/library/NativeLibrary 的实现
我在 Android 项目中使用 JNetPcap 库:我无法使用此代码访问我的本机应用程序,即使我将 JNetPcap 设置为项目的库。
有人可以帮助我吗?请
我的代码如下:
日志文件:
java - JNetPcap 项目
我制作了一个 jNetPcap 项目,其代码如下:
当我尝试执行程序时,我在控制台标签中得到了这个结果:
“无法读取设备列表,错误是”
由于 jNetPcap 依赖于需要 root 权限的 Libpcap C 库,很明显这就是我的程序无法运行的原因。有人可以帮我解决这个问题吗?
注意:我尝试在 src 文件夹中创建 .jar 文件并从该 .jar 文件创建一个 .exe,但它会引发以下错误:
java - 使用 jnetpcap 进行数据使用计数
我为一个可以测量计算机总数据使用量的程序编写了以下代码。我使用了 PcapPacket 类的 getTotalSize() 方法。它是直接表示数据使用情况(如果连续添加)还是我应该使用其他方法。
以上是我编写的代码,试图计算通过网络的流量。它是否直接指示(如果不是完全准确)计算机的数据使用情况?
java - 如何使用 jnetpcap 将捕获的数据包转发到另一个网络设备?
我想发送从网络设备 1 嗅探到的捕获数据包,并将其注入网络设备 2 而不更改其内容(将充当电线)
到目前为止我已经尝试过
java - 来自 Java 的 PCAP 纳秒分辨率
语境
当前状态
对于性能分析,我的公司对纳秒级分辨率很感兴趣。到目前为止,我们一直在使用硬件时间戳,并且纳秒的支持很快就被入侵到了 C libpcap库中。
似乎现在已经在库中添加了对纳秒的支持(请参阅此处的其他 Stack Overflow 答案),并且git 存储库上的最后一个版本使以下方法可用:
未来
问题是,C 已经证明自己难以维护、难以扩展,而且由于我们仅将捕获用于分析,我们觉得我们可以从使用Java中受益。在性能分析方面,能够使用适当的 IDE、Maven、构建 Web 服务等似乎比执行速度更重要。
我最初希望能够使用jNetPcap,但我不知道如何使用 libpcap 的 Java 绑定支持纳秒级分辨率。
问题
jNetPcap
有谁知道使用 jNetPcap 以纳秒精度读取 Pcap 文件的简单方法?
更新:我刚刚发现TimestampResolution
在 jNetPcap 的 Javadoc 中提到了一个枚举。我将尝试使用它并稍后更新我的答案。
注意:我还直接在jNetPcap 的支持论坛上询问了纳秒分辨率,如果我在那方面得到任何答案,我会更新我的问题......
其他解决方案
有谁知道另一种从 Java 生态系统中获利的方法,同时仍然能够以纳秒级精度读取 PCap 文件?
谢谢!:)
java - Jar 从 cmd 工作 - 不是从双击(附加库)
我似乎有一个奇怪的问题,这很可能是由于不了解在 java 中包含其他库是如何工作的。
我编写了一个jnetpcap.jar
用于处理 pcap 文件的程序。当我从 Eclipse 启动应用程序时,它运行良好,并且通过导出可运行的 jar(将所需的库复制到子文件夹)也工作了很多次。它甚至可以在其他计算机上运行。如jnetpcap doc中所述,运行Windows的计算机已放入jnetpcap.dll
(C:\Windows
根据每台机器上的x86或x64 dll)
无论如何,以下场景可以在我和其他机器上重现:
- 运行完整的 Eclipse 项目工作
- 从 cmd
java -jar pcapdump.jar
运行 double-click jar
gui 等工作 - 但“主要工作”没有完成,所以没有使用 pcap 文件。
我在日志中看不到任何错误。
eclipse中的配置:
- 添加了外部用户库。指向我本地的 jnetpcap.jar 和 source-jar。
当导出为 runnable-jar 并将库复制到子文件夹时,jnetpcap.jar 被复制到单独的子文件夹中。就像我以前做过很多次一样。
无论如何,今天存在所描述的问题,我不知道我做错了什么或可能出了什么问题。
java - 使用 Java 读取 WIRELESS .pcap 数据包
我想读取捕获的 (.pcap) WIRELESS 数据包并获取 IP 地址和端口号、标志等信息(来自网络层和 OSI 模型的上层)。所以哪个JAVA库可以帮助我。我尝试使用 JnetPcap 但没有成功,所以 JnetPcap 是否支持无线数据包?...或我可以在上面使用的任何其他 java 库
android - 用于 Android 数据包捕获的 jNetPcap
连接到 Wifi 时,我一直试图在我的 android 应用程序中捕获数据包。
我正在使用广播接收器类。
使用以下代码连接到 wifi 网络时,我已成功接收到广播:
我想在网络连接时捕获数据包。我知道关于 wifiInfo 和 WifiManager 类的一切。
我在这里尝试使用jNetPcap库。如何捕获这些数据包?我没有想法。
请大家帮帮我...
java - jNetPcap sendPacket() 函数复制帧
我想问你一个具体的问题:我正在尝试使用Java 1.7上的jNetPcap 1.4库开发一个软件交换机,目标是有一个程序,可以转发在端口号上接收到的数据包。1 到端口号。2,反之亦然(仅在这两个 NIC-s 上)。
我可以在两个接口上看到所有传入的数据包,但是在转发时,我有一个问题:如果我在接口 X 上发送一个数据包,类内部pcap.sendPacket(PcapPacket)
的nextPacket()
函数PcapPacketHandler()
也会看到它,并且会处理为“ new”数据包,只是忽略它,因为它是由同一个Pcap
实例发送的。
有什么方法可以忽略 pcap.sendPacket(PcapPacket) 函数发送的数据包(因此它们不会再次出现在 nextPacket() 函数中)?
我对底层的 winpcap 库了解不多,但我确信 C# 中的 SharpPcap 具有这种类型的功能。jNetPcap 也没有,还是我错过了什么?
我尝试过的事情:
- 使用
pcap.inject()
代替pcap.sendPacket()
,但我的网卡似乎不支持这个功能 - 将捕获方向设置为仅入站
pcap.setDirection(Direction.IN)
- 这似乎完全没有效果,数据包被捕获就像设置之前一样。
附言。不幸的是,我必须用 Java 编写它,如果 jNetPcap 库没有此功能,请您建议如何解决该问题?我正在考虑将发送的数据包缓冲到某种类型的数组中,并检查每个新检测到的数据包是否与数组中的一个数据包相同——但这似乎是一个计算复杂的解决方案。
这是我的示例代码(不是全部,只是相关部分):
第二个界面也是如此。
提前谢谢你的帮助。
eclipse - 为什么选择的设备没有在 Jnetpcap 中打开(使用 eclipse)?
我正在学习使用 jnetpcap(在 Windows 8、64 位上)。我首先安装了 Wincap,然后在 Eclipse 中设置了库并运行了以下示例(不做任何更改):http: //jnetpcap.com/examples/classic。它运行没有任何问题,但是一旦选择了设备,就不会发送任何数据包,也不会打印任何内容到控制台。我以管理员身份运行 Eclipse(通过右键单击)。我还需要做什么才能让这个示例按预期工作。请理解我是一个java初学者。这是我在控制台中的内容(此后没有打印):