



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于socket套接字的IP数据包的抓取SOCKET sock; WSADATA wsData;ofstream ofs(ip.log,ios:app);if (WSAStartup(MAKEWORD(2,2), &wsData) != 0)printf(WSAStartup failed!n);return -1;if ( ( sock = socket(AF_INET, SOCK_RAW, IPPROTO_IP) ) = INVALID_SOCKET )printf(create socket failedn);return -1;BOOL flag = true;if ( setsockopt(sock, IPPROTO_IP, IP_HDRINCL,(char*)&flag, sizeof(flag) = SOCKET_ERROR )printf(setsockopt failed!n);return -1;char hostName128;if ( gethostname(hostName, 100) = SOCKET_ERROR )printf(gethostname failed!n);return -1;hostent* pHostIP;if( ( pHostIP = gethostbyname(hostName) ) = NULL )printf(gethostbyname failedn);return -1;sockaddr_in addr_in;addr_in.sin_addr = *(in_addr*)pHostIP-h_addr_list0;addr_in.sin_family = AF_INET;addr_in.sin_port = htons(6000);if ( bind(sock, (PSOCKADDR)&addr_in, sizeof(addr_in) = SOCKET_ERROR )printf(bind failedn);return -1;#define IO_RCVALL _WSAIOW(IOC_VENDOR,1) DWORD dwBufferLen10;DWORD dwBufferInLen = 1;DWORD dwBytesReturned = 0;char buffer100;if ( WSAIoctl(sock, IO_RCVALL, &dwBufferInLen, sizeof(dwBufferInLen),&dwBufferLen, sizeof(dwBufferLen), &dwBytesReturned, NULL, NULL) = SOCKET_ERROR )printf(ioctlsocket faildn);return -1;printf(Analysis IP Packet !nn);string s;char * p;char buffer1100;while ( true )int size = recv(sock, buffer, sizeof(buffer), 0);IP_HEADER ip = *(IP_HEADER *)buffer; cout - endl; s+=n-n;cout Version: 4) 4,buffer1,10);s+=Version: ;s+=buffer1;s+=n;cout IHL: ( (ip.HdrLen & 0x0f) * 4) endl; s+=IHL:;_itoa(ip.HdrLen & 0x0f)*4,buffer1,10);s+=buffer1;s+=n;cout Type of service: Priority 5) , Service 1 ) & 0x0f) 5,buffer1,10);s+=buffer1; s+=, Service; _itoa(ip.ServiceType 1 ) & 0x0f,buffer1,10);s+=buffer1;s+=n;cout TOtal Length: ip.TotalLen endl;s+=TOtal Length: ; _itoa( ip.TotalLen ,buffer1,10);s+=buffer1;s+=n;cout Identifcation: ip.ID endl;s+=Identifcation: ; _itoa( ip.ID ,buffer1,10);s+=buffer1;s+=n; cout sign: 15) & 0x01) , DF = 14) & 0x01) , Mf = 13) &0x01) 15) & 0x01,buffer1,10);s+=buffer1; s+= , DF = ; _itoa(ip.Flags 14) & 0x01,buffer1,10); s+=buffer1;s+=, Mf = ; _itoa(ip.Flags 13) & 0x01,buffer1,10); s+=buffer1;s+=n;cout Fragment offset: (ip.Fragoff & 0x1fff) endl; s+=Fragment offset: ; _itoa(ip.Fragoff & 0x1fff,buffer1,10); s+=buffer1;s+=n;cout Time to live: (int)ip.TimeToLive endl; s+=Time to live: ; _itoa(int)ip.TimeToLive ,buffer1,10); s+=buffer1;s+=n;cout Protocol: (int)ip.Protocol endl; s+=Protocol: ; _itoa(int)ip.Protocol ,buffer1,10); s+=buffer1;s+=n;cout Header Checksum: ip.HdrChksum endl; s+=Header Checksum: ; _itoa( ip.HdrChksum ,buffer1,10); s+=buffer1;s+=n;cout Source address: inet_ntoa(*(in_addr *)&ip.SrcAddr) endl; s+=Source address: ; s+=inet_ntoa(*(in_addr *)&ip.SrcAddr);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆市涪陵区第十九中学2024-2025学年物理八上期末考试模拟试题含解析
- 亳州市重点中学2024年七上数学期末学业水平测试模拟试题含解析
- 成都市二手房交易房产过户及产权转移服务合同
- 车贷保证金及车辆贷款利率调整通知协议范本
- 市场调研背景与目的
- 2025至2030富马酸福莫特罗行业产业运行态势及投资规划深度研究报告
- 2025至2030中国蒸汽高压釜行业发展趋势分析与未来投资战略咨询研究报告
- 机舱轻量化革新:技术发展与市场策略
- 2025年六年级数学校本课程开发计划
- 文化传承主题班会计划
- 2024年广东广州市天河区社区专职工作人员招聘笔试参考题库附带答案详解
- 电池的历史与发展
- 医患沟通原则与技巧课件
- 小学学业生涯规划与目标
- 2023年CQE客诉工程师年度总结及下年规划
- 国家开放大学《中国法律史》形成性考核1
- 搅拌类设备单机试车原始记录
- 老旧小区物业投标方案(技术标)
- 国家开放大学法学本科《商法》历年期末考试试题及答案题库
- 城市水工程概论
- 空调温度控制系统的设计与实现毕业论文
评论
0/150
提交评论