首页
|
互联网
|
IT动态
|
IT培训
|
Cisco
|
Windows
|
Linux
|
Java
|
.Net
|
Oracle
|
软件测试
|
C/C++
|
嵌入式开发
|
存储世界
|
服务器
网络设备
|
IDC
|
安全
|
求职招聘
|
数字网校
|
网页设计
|
平面设计
|
技术专题
|
电子书下载
|
教学视频
|
源码下载
|
搜索
|
博客
|
论坛
输入您的搜索字词
提交搜索表单
首 页
服务器
网络技巧
微软认证
系统安全
系统故障
系统技巧
系统优化
新手入门
资讯动态
Windows下载
Vista
论坛
专题
RSS
您现在的位置:
中国IT实验室
>>
Windows
>>
系统技巧
>>
系统技巧
>> 正文
在局域网进行IP包捕获的一种方法
ChinaItLab
佚名
2006-9-13
保存本文
推荐给好友
收藏本页
欢迎进入Windows社区论坛,与200万技术人员互动交流 >>进入
首先是几个结构的定义(网上搜索或者查阅相关文档):
//定义IP地址结构
struct IPADDRESS
{
unsigned short ip_a,
ip_b,
ip_c,
ip_d;
};
//定义IP数据包头的结构
struct IP_HEADER
{
unsigned short ip_version, /*IP的版本号 */
ip_hdr_len, /*IP包头的长度*/
ip_tos, /*IP包的服务类型*/
ip_total_len, /*IP包的总长度*/
ip_id, /*IP包的分段标识*/
ip_flags, /*IP包的分段标志*/
ip_frag_offset, /*IP包的分段偏移*/
ip_ttl, /*IP包的生存时间*/
ip_proto, /*IP包的高层
协议
*/
ip_hdr_chksum; /*IP包的校验和*/
struct IPADDRESS ip_src_addr, /*IP包的源IP地址*/
ip_dest_addr; /*IP包的目的IP地址*/
}ipheader;
//IP包的链表结构
struct stru_ip_link
{
char rcv_ip_buf[MAX_IP_SIZE];
struct stru_ip_link *next;
};
然后是
协议
的定义(包含相应的头文件#include <winsock2.h>#include<mstcpip.h>):
DWORD dwIoControlCode=SIO_RCVALL, /*接收所有的IP包*/
dwProtocol=IPPROTO_IP; /*
协议
类型为IP*/
然后是相应的捕获处理:
1.加载 Winsock
2.创建一个接收原始IP包的socket连接
3.绑定到一个接口
4.进行WSAIoctl设置,接收所有的IP数据包
参考代码:
if (WSAIoctl(s, dwIoControlCode, &optval, sizeof(optval),
NULL, 0, &dwBytesRet, NULL, NULL) == SOCKET_ERROR)
...
5.接着设定一个线程进行捕获:
(1)创建一个接收IP包的链表头
(2)设置一个标识,为真,则不断进行IP包的捕获
(3)建立一个新的结点,将捕获的数据包加入到该结点
(4)如果链表的长度达到指定的长度,创建一个线程对该链表的IP包进行解析;再设置一个在IP数据包链表不足给定的长度,而又中止IP捕获时,对链表的处理
(5)为下一个IP包链表创建一个链表头
6.建立一个进行IP包解析并显示的线程,进行解析IP数据包,然后显示IP数据包。
【责编:Peng】
相关文章
玩转Vista“发现”功能
实战:Vista与XP实现局域网互连互通
Windows Server 2008启用无线局域网支持
无需路由 XP用无线网卡建立局域网!
两步轻松消除局域网遗留共享痕迹
Windows XP局域网设置及无法访问问题
让局域网内互访无障碍六大解决方案
六大经典解决方案让局域网内互访无障碍
实战演练:Vista与XP实现局域网互连互通
局域网内共享文件 提示没有访问权限的问题
编辑推荐
· [
其他服务器
]
Windows Server 2008之Server Core完全攻略
· [
罕见工具
]
Windows Vista性能优化官方指南
· [
网络基础
]
Windows XP无线部署技术和组件概述
· [
安装
]
Vista系统用WinPE 打造双启动菜单
· [
系统管理
]
打破Vista的枷锁 我的系统我做主
· [
备份恢复
]
给Vista减减肥 让系统有快跑多快
· [
系统技巧
]
在XP下直接修改硬盘分区容量
· [
其他服务器
]
服务器成为IT中心的6个理由
· [
系统管理
]
Forefront Security的管理策略和事件
· [
Exchange
]
华硕搭建Exchange2007企业邮箱系统
相关产品和培训
文章评论
友情推荐链接
·
Asp源码
PHP源码
·
CGI源码
JSP源码
·
建站书籍教程
·
服务器软件
.net源码
·
建站工具软件
·
IDC资讯大全
·
机房品质万里行
·
IDC托管必备知识
·
全国IDC报价
·
网站推广优化
专题推荐
·
带你领略windows系统“另类”安装
·
“调教”磁盘,让Vista更在行
·
windows系统性能优化专题
·
windows系统安全——系统进程与病毒
·
Windows 平台搭建VPN攻略…
·
Windiws 系统备份与还原…
·
专题:Windows Vista系统新特性…
·
Windows server 2008专题报道…
·
关注未来 关注Windows Vista成长…
·
明明白白 学会Windows权限设置…
今日更新
·
用好Vista“谍中谍” 让系统从此更安全
·
另类详解 windows XP 的闺中秘密
·
让你操作Windows于弹指之间
·
如何在Exchange中用好AD的搜索
·
微软下周将发布安全公告 7个危急程度高
·
杀毒之后Windows桌面不显示之谜
·
使用Vista之PC完整备份功能
·
解析Windows虚拟存储技术VDS
·
Windows 2008等服务器平台近期更新预览
·
微软发布新版SQL Server 2008 共7个版本
认证培训
频道精选
·
新版CCNA考试大纲 07年8月1日生效
·
新手学习宝典:Linux常用命令全集
·
知已知彼,深入了解系统安全知识
·
从入门到精通 java初学者实践系列教程
·
共同学习——Oracle入门基础专题
·
ADO.net与PowerBuilder的综合比较
·
评论:中国互联网“钱”途何在?
·
中科院:龙芯要成"中国奔腾" 能卖1亿颗
Windows频道导航
服务器技术
FTP服务器
Exchange
ISA Server
Web服务器
SQL Server
域服务器
其他服务器
网络技巧
网络访问
网络技巧
网络命令
网络管理
共享
微软认证
认证教材
考试介绍
认证介绍
心得技巧
系统安全
安全策略
备份恢复
系统安全
防火墙
漏洞补丁
木马病毒
网络安全
服务器安全
系统故障
当机故障
软件故障
系统故障
开关机故障
网络故障
系统技巧
系统管理
系统技巧
注册表
进程
系统优化
提速
清理垃圾
服务
优化性能
新手入门
技术前沿
安装
网络基础
系统基础
资讯动态
Windows下载
Windows论坛
Vista专栏
Windows Server 2008