文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发其他语言一段sniffer源码
精品推荐
特别推荐
·控制面板知多少
·给你十条学习Ruby语言的理由
·分页管理机制
·Perl 语言的重要价值体现
·经验技巧:分享两条Delphi开发经验
·Java编程思想:面向对象的逻辑思维方法
·Samba系统简介
热点TOP10
·AIX 5L 学习大纲/简易教程(2)(未经许可,请勿COPY)
·DENX U-Boot及Linux使用手册
·EZ-USB 68013A开发指南
·图象处理中的边缘检测------canny算子
·Visual C++ ADO数据库编程入门
·利用 wordXP 实现自动排班
·UDT协议-基于UDP的可靠数据传输协议
·XPCOM--LINUX下的组件开发技术
·MyEclipse JSF 快速入门中文版(上)
·samba和openldap结合实战
·AIX 5L 学习大纲/简易教程(1)(未经许可,请勿COPY)
·Microsoft Windows XP Embedded 开发工具概述
·eMbedded Visual C++开发入门
·在VC6中创建wxWidgets项目[附图]
·数值计算程序大放送-线性代数方程组
·列表视图控件
·visual studio 2005 简体中文团队开发版 SQL server 2005简体中文版下载
·Visual Studio 2005:在 Visual C++ 中开发自定义的绘图控件
·汇编语言工具下载
·多文档界面(MDI)

一段sniffer源码

日期:2007年5月2日 作者: 查看:[大字体 中字体 小字体]


#include <winsock2.h>
#include <stdio.h>
//#include <MsTcpIp.h>

/* 加这一句才不会提示:SIO_RCVALL没有定义 */
#define SIO_RCVALL _WSAIOW(IOC_VENDOR,1)
#pragma comment(lib, "Ws2_32")
void DecodeIPPacket(char *pData);

typedef struct _TCPHeader
{
 USHORT sourcePort;
 USHORT destinationPort;
 ULONG sequenceNumber;
 ULONG acknowledgeNumber;
 ULONG dataoffset;
 UCHAR flags;
 USHORT windows;
 USHORT checksum;
 USHORT urgentPointer;
}TCPHeader, *PTCPHeader;

void main()
{
 /*
 WSADATA wsaData;
 if(WSAStartup(MAKEWORD(2,2), wsaData) != 0)
 {
  return;
 }
 */

 char buff[1024];
 int nRet;
 DWORD dwValue = 1;

 SOCKET sRaw = socket(AF_INET, SOCK_RAW, IPPROTO_IP);
 char szHostName[56];
 SOCKADDR_IN addr_in;
 struct hostent *pHost;

 gethostname(szHostName, 56);;
 pHost = gethostbyname((char*)szHostName);
 if(pHost == NULL)
 return;

 addr_in.sin_family = AF_INET;
 addr_in.sin_port = htons(0);
 memcpy(&addr_in.sin_addr.S_un.S_addr, pHost->h_addr_list[0], pHost->h_length);
 printf("binding to interface:%s\n", inet_ntoa(addr_in.sin_addr));

 if(bind(sRaw, (PSOCKADDR)&addr_in, sizeof(addr_in)) == SOCKET_ERROR)
  return;
 
 if(ioctlsocket(sRaw, SIO_RCVALL, &dwValue) != 0) 
 return;
 
 while(TRUE)
 {
  nRet = recv(sRaw, buff, 1024, 0);
  if(nRet > 0)
  {
   DecodeIPPacket(buff);
  }
 }
}

void DecodeIPPacket(char *pData)
{
 TCPHeader *pTCPHdr = (TCPHeader*)pData;
 printf("port:%d -> %d\n", ntohs(pTCPHdr->sourcePort), ntohs(pTCPHdr->destinationPort));
}

不过怎么没有嗅到数据?奇怪。

(出处:清风网络学院






上一篇:我写的《Particle System Viewer》

下一篇:google中国采访从google总部回来的工程师(多图)

一段sniffer源码 相关文章:
·电脑使用一段时间后会变慢原因解析
·关于Sniffer Pro
·sniffer pro 中文手册
·网络嗅探:用Sniffer监控网络流量
·网络嗅探Sniffer监控广播风暴
·使页面自动刷新或者是隔一段时间跳转特效实现
·一段sniffer源码
·让Foxmail每隔一段时间自动收取新邮件
·Sniffer pro 使用辅助说明
·一段显示下载进度条的下载文件代码
一段sniffer源码 相关软件:
·Sniffer ProV4.7.530 特别版
·Sniffer使用教程
·QQ Sniffer V2007 Build 8
·即时聊天讯息监控Sniffer过滤
·跑跑卡丁车 加一段游戏视频
·那一段湮没的传奇
·MSN SnifferV1.0
·Advanced PrintSnifferV1.0.0.57
·艾菲网页侦探(EffeTech HTTP Sniffer)V3.6
·最近一段时间比较火的男女歌曲下载

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot