libpcap

    0热度

    1回答

    我想查看使用libpcap往返于我的环回网络适配器的http流量。我只是从网络编程开始,对这个库完全陌生。感谢我之前收到的answer,我已经成功地检测到我的机器的“lo0”适配器(Mac OSx)上的链接层类型。 //lookup link-layer header type link_layer_type = pcap_datalink(handle); if(link_layer_typ

    0热度

    1回答

    我使用libjpcap从网络捕获数据包并在我的应用程序中处理它们。目前,我们可以使用过滤器,以便我们只从某个目的地捕获。例如,src host 10.159.2.3将只捕获来自该端点的流量。 最近我们增加了GRE数据包支持,但过滤器不按用户的预期工作。在我们的例子中,GRE数据包的有效载荷是一个IPv4数据包。 有没有办法进入一个过滤器,过滤器会根据所包含的IPv4数据包的src和/或DST包?我

    1热度

    1回答

    我正在尝试检测我的计算机上的所有网络适配器(OSx 10.8)。所以我有这个代码小,典型的一块: int main() { pcap_if_t *alldevs; char errbuf[PCAP_ERRBUF_SIZE]; pcap_findalldevs(&alldevs, errbuf); ... } 当我执行这个链表:pcap_if_t是空的,er

    0热度

    1回答

    我编程使用libevent的网络程序返回的文件描述符的实时使用。 在这个程序中,我想捕捉使用libpcap的数据包,修改这些数据包,然后发送出去。这些步骤应该是实时的。 所以我创建了一个实时捕捉,使用pcap_get_selectable_fd获得的实时捕捉文件描述符pcap_fd和pcap_fd添加READ_EV事件到libevent的循环。 无论如何,它就像select()或epoll()轮询

    0热度

    1回答

    我很好奇为什么sockaddr在pcap_addr_t里面使用,当调用pcap_findalldevs时给你。这不是那么简单的原因是因为sockaddr_in包含有关地址和端口的信息。这与.NET的System.Net.IPEndPoint类相似。 如果我们在查看.NET库,我不希望看到属性如此,并且有关属于设备的地址的描述。据我所知,在系统上描述设备时,没有协议定义地址和端口。 在我所有的设备(

    0热度

    1回答

    JNetPcap有一些问题。 我使用Ubuntu 12.04,并试图制作基于java语言的数据包snipper。 我所做的是以下。 我已经下载了JNetPcap 1.3.0。 并且正如教程所说的构建了一个java项目。 http://jnetpcap.com/examples/dumper < - 这是链接。 我输入就像那个链接,我得到了我的第一个问题。 PcapHandler类已被弃用。所以我找

    0热度

    1回答

    我需要读取捕获的PCAP文件,它包含一些专有的描述符在文件的MAC报头之后开始由FPGA所附,添加额外的2个字节来描述符和写回。 我想用C来实现这个Linux上使用的libpcap库。我是对的,我需要调用pcap_dump_open()和pcap_dump()来写入缓冲区?另外,我确实需要在pcap_dump之前用pcap_pkthdr来增加caplen和'len'(相加2),然后再用pcap_d

    14热度

    4回答

    我一直在努力让OpenWRT路由器将一个WiFi探测请求记录到MySQL数据库(它为每个探测请求数据包存储MAC地址和RSSI信息以及其他特定路由器数据)。 在研究了libpcap之后,我已经能够凑齐一个基本的小程序,它使用过滤器表达式('wlan subtype probe-req')在监视器接口(mon0)上简单地嗅探数据包,然后打印在十六进制的原始数据包。通过libpcap上的在线信息,这部

    1热度

    1回答

    我遇到了pcap过滤器的问题。下面是代码的一部分: #include <pcap.h> #include <stdio.h> void pcap_fatal(const char *failed_in, const char *errbuf) { printf("Fatal error in %s: %s\n", failed_in, errbuf); exit(1); } int

    7热度

    1回答

    我想捕捉其目的地为本地端口UDP数据包,所述过滤器表达式类似udp port 20000。我注意到,如果UDP数据包上存在IP碎片,libpcap只能捕获第一个IP碎片。我想原因是第二个IP片段没有UDP头(我认为它与TCP相同),所以libpcap无法使用过滤器express udp port 20000捕获它们。 都对此有任何解决方法吗?或任何其他库可以捕获指定到特定本地端口的数据包? 谢谢!