问题标签 [pcap.net]

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.

0 投票
1 回答
657 浏览

c# - 尝试创建连接时获取 TCP RST 数据包

我正在尝试创建 tcp 连接。

我正在发送 tcp SYN 并获得 SYN-ACK。之后,我正在发送 ACK 消息。

但是,在我发送最后一个 ACK​​ 之前,我收到了 RST 重置数据包。我可以看到使用wireshark嗅探器。

我正在 C# 中编写我的代码,一个使用 pcap .NET 库,在 Win7 上。

我怎样才能解决这个问题,是什么导致它发生?

0 投票
0 回答
619 浏览

c# - 拆分 TCP、UDP 数据包数据

我正在使用 PcapDot.Net 项目的 DLL,并尝试拆分 TCP 和 UDP 数据包数据。

例如,如果我的有效载荷长度是 20 字节,我想将其分成 2 块 10 字节。

当然以太网层、IPv4层和传输层保持不变,我只修复了这个校验和。

因此,这适用于 UDP,如果我的数据包的有效负载在播放新的 2 个数据包后为 100 个字节,我可以在它们上看到 2 个数据包,每个数据包的有效负载长度为 50 个字节。

在这种情况下,我的问题是 TCP,如果在播放新的 2 个数据包后我的有效负载为 100 个字节,我可以看到 2 个数据包,但在这种情况下没有任何有效负载,Wireshark 注意到除第一个数据包外的每个数据包都被视为 TCP 重传。

我究竟做错了什么 ?

这是我拆分数据的函数:

0 投票
1 回答
313 浏览

c# - IP 分片导致 Checksum 不正确消息

我正在使用PcapDorNetDLL,并尝试分割我的流量:

我的输入数据包是TCP packet,输出是 4 个数据包:3 个IPv4 packets,最后一个数据包是,TCP但我收到的这个数据包在 TCP 层字段下显示此消息:

Checksum: 0x5d17 [不正确,应该是0xabb7(可能是“TCP checksum offload”引起的?)]

使用 UDP 似乎每个 UDP 数据包也分成几个 IPv4 数据包,最后一个是 UDP,但在 UDP 情况下它看起来很好。我做错了什么?

请查看原始数据包和分片:http ://www.filedropper.com/desktop_122

0 投票
1 回答
341 浏览

c# - 使用 Pcap.Net 修复校验和错误的数据包

我有几个PCAP坏的文件Checksum,为了修复这些文件,我正在使用这种方法:

现在例如,如果我的数据包是ICMP在这个数据包(校验和错误)完成我的功能之后,它仍然是错误的Checksum,所以我的问题是:我需要检查每个数据包协议还是有一个通用的方法来做到这一点?(目前我的功能可以正常工作TCPUDP但是其他协议呢?)

0 投票
1 回答
89 浏览

c# - 如果我使用多个线程,我应该在发送数据包时锁定我的机器适配器吗?

我正在使用Pcap.Net通过我的机器适配器传输数据包,在某些情况下,我使用可以更改Parallel.ForEach的属性同时从多个文件中读取数据包。MaxDegreeOfParallelism所以我想知道我是否需要锁定发送这个数据包的对象..

这就是我主要发送数据包的方式:

0 投票
1 回答
1015 浏览

header - 如何在 C# 中的 pcap.net 中构建输出 pcap 文件

我在 C# 中使用 Pcap.net 库来更改和匿名化数据包文件。我已经从离线 pcap 文件中读取了数据包,并且我已经更改了其中的一些字段。我的问题是,在更改 IP 地址、MAC 地址等数据包的字段后,有什么方法可以创建 pcap 格式的输出文件……?谁能帮助我?

预先感谢 Ftm.E

0 投票
1 回答
64 浏览

c# - 检查 TcpLayer 或 udpLayer 是否不为空

我正在使用 pcap.net 从 pcap 文件中读取数据包,并在匿名化后将它们保存到新的 pcap 文件中(更改某些字段)。我有个问题。一些 pcap 文件包含不正确或不完整的数据包,例如它们没有 tcp 层或有效负载。我想知道如何检查 tcplayer 是否存在?

这是我的代码的一部分:

这些行中没有 tcp 或 udp 层的 pcap 文件有错误。我如何检查 tcpLayer 在此行之前是否不为空?谢谢

0 投票
0 回答
116 浏览

runtime-error - pcap.net 中的异常错误

我正在使用 pcap.net 更改数据包并重建输出 pcap 文件。但在这部分我有错误。谁能说,我该如何解决?

这是我的错误:对象引用未设置为对象的实例。(对于 ipv4Layer)

以及错误的详细信息: Length = 'ipV4Layer.Length' 引发了“System.NullReferenceException”类型的异常

0 投票
2 回答
61 浏览

wpf - 定义为静态或非静态时,类成员的行为不同

我有一个WPF带有PcapDotNetDLL 的应用程序来测量我的机器Interface Rate

这是Model

如您所见Start,方法开始测量Interface速率并将值放入 2 个字段中:

_bitsPerSecond_packetsPerSecond

所以在应用程序启动后我有这个字段:

那读取了我所有的机器接口。

之后我开始我的Start方法:

  • 好的,现在这是我的问题:

这是我的Timer Tick Event

如果我BitsPerSecond Class Interface member定义为常规而不是Static它的值始终为零:

如果BitsPerSecond定义为静态一切都很好:

所以我的问题是为什么?

编辑

目前我改变了我的功能:

我想要实现的是在我的机器上打开每个接口的统计信息,但是在第一个接口(我有 2 个)中我可以看到流量在变化(BitsPerSecond)但是在第二个接口中它总是为零(我确保生成通过此接口的一些流量,因此它不应该为零)

0 投票
1 回答
843 浏览

c# - PcapDotNet 试图加载格式不正确的程序

我正在尝试将 pcapDotNet 库用于我的项目,但是在启动应用程序时出现异常。我正在使用 Visual Studio 2010、winpcap 4.1.3 和 PcapDotNet 1.0.2.21772。

例外是:

无法加载文件或程序集“PcapDotNet.Core, Version=1.0.2.21772, Culture=neutral, PublicKeyToken=4b6f3e583145a652”或其依赖项之一。试图加载格式不正确的程序。