- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用Wincap编制一个简单的网络数据包监听与捕获程序
实验目的
二、实验内容
要求使用Wincap编制一个简单的网络数据包监听与捕获程序,同时,将捕获的数据包进行分析并将分析结果显示在屏幕上。
实验步骤、记录和结果
代码如下:
#include pcap.h
typedef struct{
int number;
char name[10];
}Protocol;
Protocol protocol[10];
/* 4字节的IP地址 */
typedef struct ip_address{
u_char byte1;
u_char byte2;
u_char byte3;
u_char byte4;
}ip_address;
/* IPv4 首部 */
typedef struct ip_header{
u_char ver_ihl; // 版本 (4 bits) + 首部长度 (4 bits)
u_char tos; // 服务类型(Type of service)
u_short tlen; // 总长(Total length)
u_short identification; // 标识(Identification)
u_short flags_fo; // 标志位(Flags) (3 bits) + 段偏移量(Fragment offset) (13 bits)
u_char ttl; // 存活时间(Time to live)
u_char proto; // 协议(Protocol)
u_short crc; // 首部校验和(Header checksum)
ip_address saddr; // 源地址(Source address)
ip_address daddr; // 目的地址(Destination address)
u_int op_pad; // 选项与填充(Option + Padding)
}ip_header;
/* 回调函数原型 */
void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data);
int main()
{
pcap_if_t *alldevs;
pcap_if_t *d;
int inum;
int i=0;
pcap_t *adhandle;
char errbuf[PCAP_ERRBUF_SIZE];
u_int netmask;
//char packet_filter[] = ip and udp;
char packet_filter[] = ip;
struct bpf_program fcode;
protocol[0].number = 1; strcpy(protocol[0].name, ICMP);
protocol[1].number = 2; strcpy(protocol[1].name, IGMP);
protocol[2].number = 4; strcpy(protocol[2].name, IP);
protocol[3].number = 6; strcpy(protocol[3].name, TCP);
protocol[4].number = 8; strcpy(protocol[4].name, EGP);
protocol[5].number = 9; strcpy(protocol[5].name, IGP);
protocol[6].number = 17; strcpy(protocol[6].name, UDP);
protocol[7].number = 41; strcpy(protocol[7].name, IPv6);
protocol[8].number = 50; strcpy(protocol[8].name, ESP);
protocol[9].number = 89; strcpy(protocol[9].name, OSPF);
/* 获得设备列表 */
if (pcap_findalldevs_ex(PCAP_SRC_IF_STRING, NULL, alldevs, errbuf) == -1)
{
fprintf(stderr,Error in pcap_findalldevs: %s\n, errbuf);
exit(1);
您可能关注的文档
- 低面背景网状几何碎片创意欧美大气商务通用ppt模板.ppt
- 体外培育牛黄中胆酸、去氧胆酸含量检验方法验证方案.doc
- 体系宣贯课件.ppt
- 会展中心照片PPT.pptx
- 体育与健康子课题学校研究设计.doc
- 传热学-第二章2.ppt
- 体育实践教学大纲.doc
- 体育教师待遇.doc
- 体育赞助与广告Athlete Sponsorship.ppt
- 体验营销与冲动性购买行为的关系研究.doc
- 2024高考物理一轮复习规范演练7共点力的平衡含解析新人教版.doc
- 高中语文第5课苏轼词两首学案3新人教版必修4.doc
- 2024_2025学年高中英语课时分层作业9Unit3LifeinthefutureSectionⅢⅣ含解析新人教版必修5.doc
- 2024_2025学年新教材高中英语模块素养检测含解析译林版必修第一册.doc
- 2024_2025学年新教材高中英语单元综合检测5含解析外研版选择性必修第一册.doc
- 2024高考政治一轮复习第1单元生活与消费第三课多彩的消费练习含解析新人教版必修1.doc
- 2024_2025学年新教材高中英语WELCOMEUNITSectionⅡReadingandThi.doc
- 2024_2025学年高中历史专题九当今世界政治格局的多极化趋势测评含解析人民版必修1.docx
- 2024高考生物一轮复习第9单元生物与环境第29讲生态系统的结构和功能教案.docx
- 2024_2025学年新教材高中英语UNIT5LANGUAGESAROUNDTHEWORLDSect.doc
文档评论(0)