




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
TCP/IP原理与应用实验报告得分: 班级姓名学号实验名称IP包解析与分片重组的编程实现实验室号实验目的1掌握IP包的格式。2掌握IP包的分片重组。3. 练习使用winpcap编程实现IP包的解析与分片重组。实验要求1认真阅读和掌握本实验的相关知识点。2. 完成实验报告。实验内容 编程实现IP包各域的解析: n 输出各域的内容n 将协议域对应的协议编号转换为对应的ASCII表示的协议名, n 说明IP是否经过分片 编程实现分片重组功能n 将经过分片的IP包重组成原来的数据包,并以16进制输出内容(考虑到长度限制,可以只输出数据包交界部分的内容,以验证重组的正确性)n 可假设IP包按顺序到达,且不会有丢包.实验步骤或源代码#defineDATA_LENGTH500#includevoidPacket_Analyser(u_char*user,conststructpcap_pkthdr*header,constu_char*pkt_data);voidPrit_Proto(intProtocelValue);/声明一个协议输出函数,简化格式/*4字节的IP地址*/typedefstructip_addressu_charbyte1;u_charbyte2;u_charbyte3;u_charbyte4;ip_address; typedefstructip_headeru_charver_ihl;/版本(4bits)+首部长度(4bits)u_chartos;/服务类型(Typeofservice)u_shorttlen;/总长(Totallength)u_shortidentification;/标识(Identification)u_shortflags_fo;/标志位(Flags)(3bits)+段偏移量(Fragmentoffset)(13bits)u_charttl;/存活时间(Timetolive)u_charproto;/协议(Protocol)u_shortcrc;/首部校验和(Headerchecksum)ip_addresssaddr;/源地址(Sourceaddress)ip_addressdaddr;/目的地址(Destinationaddress)u_intop_pad;/选项与填充(Option+Padding)ip_header; staticintCOUNT=1;ip_header*Pheader_Cache=(ip_header*)malloc(sizeof(ip_header)*COUNT); voidmain()pcap_if_t*alldevs;pcap_if_t*d;pcap_t*adhandle;intindex;inti=0;charerrbufPCAP_ERRBUF_SIZE;if(pcap_findalldevs_ex(PCAP_SRC_IF_STRING,NULL,&alldevs,errbuf)=-1)fprintf(stderr,Errorinpcap_findalldevs_ex:%sn,errbuf);exit(1);for(d=alldevs;d!=NULL;d=d-next)printf(%d:n%s,i+,d-name);if(d-description)printf(%sn,d-description);elseprintf(NoDescriptionavailable);if(i=0)printf(nNointerfacesfound!MakesureWinpCapisinstalled.n);return;printf(nnIfYouWantChooseaDeviceToCaptureTheDataPleaseInputTheNumberBeforeTheDevicen);scanf(%d,&index);if(indexi|index0)printf(YouChoosedAnErrorNum);exit(1);for(d=alldevs,i=0;inext,i+);printf(YouChoosedTheDeviceItsNameIs:%s,d-name);/打开适配器为检测做好准备if(adhandle=pcap_open(d-name,65536,PCAP_OPENFLAG_PROMISCUOUS,1000,NULL,errbuf)=NULL)fprintf(stderr,nUnabletoOpentheadapter.%sisNotsupportbyWinPcapn,d-name);pcap_freealldevs(alldevs);return;printf(nlistingon%s.n,d-description);/开始抓获数据包pcap_loop(adhandle,0,Packet_Analyser,NULL);pcap_freealldevs(alldevs);voidPacket_Analyser(u_char*user,conststructpcap_pkthdr*header,constu_char*pkt_data)ip_header*pheader=(ip_header*)(pkt_data+14);ntohs(pheader-flags_fo);if(pheader-proto!=1)return;for(inti=0;iflags_fo);/重组IP数据包if(int)header-len1500)intFlag=0;for(inti=0;iidentification=(Pheader_Cache+i)-identification)Flag=1;if(Flag)printf(以下分片属于同一个数据包:n);for(inti=0;iidentification=(Pheader_Cache+i)-identification)printf(Pheader_Cache%d标志字段:%d,地址:%d,TTL:%d,MF字段:%d,片偏移字段:%dn,i,(Pheader_Cache+i)-identification,(Pheader_Cache+i)-daddr,(Pheader_Cache+i)-ttl,(Pheader_Cache+i)-flags_fo13&0x01,(Pheader_Cache+i)-flags_fo&0x1f);printf(*n);printf(Pheader标志字段:%d,地址:%d,TTL:%dMF字段:%d,片偏移字段:%dn,(pheader)-identification,(pheader)-daddr,(pheader)-ttl,(pheader)-flags_fo6&0x01,pheader-flags_fo&0x1f);return;elseprintf(该分数据包未被分片n);elsePheader_Cache=(ip_header*)realloc(Pheader_Cache,sizeof(ip_header)*(COUNT+1);if(Pheader_Cache!=NULL)*(Pheader_Cache+COUNT-1)=*(pheader);COUNT+;pheader=NULL;elseprintf(Memoryapplayerror!);voidPrit_Proto(intProtocelValue)switch(ProtocelValue)case1:printf(协议:ICMPn);break;case2:printf(协议:IGMPn);break;case4:printf(协议:IPinIPn);break;case6:printf(协议:TCPn);break;case8:printf(协议:EGPn);break;case17:printf(协议:UPDn);break;case41:printf(协议:IPv6n);break;case46:printf(协议:OSPFn);case806:printf(协议:ARPn);break;default:printf(协议:UNKNOWNn);break;实验结论、心得体会1. 鉴于实验报告长度有限,只是附上IP数据包重组的代码,对IP数据包解析部分的代码,并未附上解析IP包部分的代码2. 通过此次的实验,更深层
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年教师招聘之《小学教师招聘》题库综合试卷含答案详解【突破训练】
- 智能穿戴设备女性健康管理创新创业项目商业计划书
- 电商平台用户画像创新创业项目商业计划书
- 2025内蒙古维拉斯托矿业有限公司招聘6名考试备考及完整答案详解一套
- 2025年燃煤发电机组项目发展计划
- 教师招聘之《小学教师招聘》考前冲刺模拟题库附参考答案详解ab卷
- 轨道交通智能导航优化-洞察及研究
- 爱琴海购物公园可行性研究报告
- 教师招聘之《小学教师招聘》从业资格考试真题(满分必刷)附答案详解
- 教师招聘之《小学教师招聘》能力提升题库(夺分金卷)附答案详解
- 新疆地名中英对照
- 记叙文中的并列式结构课件
- 新媒体运营实务完整全套课件
- 桩基础平法施工图(平法施工图识读)
- GB/T 9113-2010整体钢制管法兰
- GB/T 23338-2018内燃机增压空气冷却器技术条件
- 海姆立克急救法完整版本课件
- 国家地表水环境质量监测网采测分离实施方案课件
- 控压钻井技术及实践培训讲义工艺课件
- 厚度仪点检表
- 自然拼读法在小学英语教学中的应用的实践研究
评论
0/150
提交评论