经过这段时间接触dpdk,了解了dpdk的工作模式和流程,现在需要从绑定的网卡上获取数据包然后保存成pcpa格式的包,因为dpdk绑定的网卡不用使用tcpdump 还有我这个版本也没有pdump可以使用,只能自己解析。
之前在网上看到的demo都是把pcap文件解析成五元组之类的东西,现在根据那些demo反向写一个保存的,下面是代码,转载希望能标注一下。
pcap.h:
// pcap.h
// pcaptest
//
// Created by ly on 18-5-25.
#ifndef pcaptest_pcap_h
#define pcaptest_pcap_h
#include "comdef.h"
typedef unsigned int bpf_u_int32;
typedef unsigned short u_short;
typedef int bpf_int32;
/*
Pcap文件头24B各字段说明:
Magic:4B:0x1A 2B 3C 4D:用来标示文件的开始
Major:2B,0x02 00:当前文件主要的版本号
Minor:2B,0x04 00当前文件次要的版本号
ThisZone:4B当地的标准时间;全零
SigFigs:4B时间戳的精度;全零
SnapLen:4B最大的存储长度
LinkType:4B链路类型
常用类型:
0 BSD loopback devices, except for later OpenBSD