蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄 蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄 蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆 袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁
芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁 芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁 芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅 莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃
螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃 螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿螁羅蒇螈袃膁莃螇羆羃艿螆螅腿芅螅袈肂薄螄羀芇蒀螃肂肀莆螃螂芆节袂袄肈薀袁羇芄蒆袀聿肇莂衿衿节莈蒆羁膅芄蒅肃莀薃蒄螃膃葿蒃袅荿莅蒂羇膂芁薁肀羄蕿薀蝿膀蒅薀羂羃蒁蕿肄芈莇薈螄肁芃薇袆芆薂薆羈聿蒈薅肁芅莄蚅螀肈芀蚄袃芃膆蚃肅肆薄蚂螅莁蒀蚁袇膄莆蚀罿莀节虿肁膂薁蝿
监控 IP 包流量
摘 要 本课程设计主要是编制程序,监控网络,捕获一段时间内网络上的 IP 数据包,按
IP 数据包的源地址统计出该源地址在该时间段内发出的 IP 包的个数,将其写入日志文件中
或用图形表示出来。程序中会用到 Winpcap,它主要功能在于独立于主机协议发送和接收原
始数据报。
本次课程设计中用 VC++实现基于 Winpcap 的 IP 数据包的捕获和统计,根据获取网络
设备列表,选择正确的网卡并打开,获取子网掩码,编译、设置过滤器,捕获数据包;列出
源 IP 地址及其相应的包数。使我们对于 TCP/IP 协议以及 IP 数据抱的格式有了进一步的了
解和掌握。通过编写程序从而实现对网络中 IP 数据包流量的统计。
1、引言
1.1 课程设计目的
本次课程设计主要是通过用 VC++编程实现对网络中 IP 数据包流量的统计,也就是编
制程序,监控网络,捕获一段时间内网络上的 IP 数据包,按 IP 数据包的源地址统计出该源
地址在该时间段内发出的 IP 包的个数,将其写入日志文件中或用图形表示出来。同时应用
Winpcap,Winpcap 提供了很好的捕获网络数据包的方法,通过本次课程设计可以将 VC++
知识与 Winpcap 结合起来实现在一段时间内对 IP 数据包的流量进行统计,加深了对
Winpcap 的理解和运用能力。
1.2 课程设计的要求
(1)理解运用 VC++软件实现对网络中的 IP 数据抱流量的统计方法和步骤。
(2)学习简单的 MFC 框架结构;
(3)加深理解 TCP/IP 协议以及 IP 数据抱的格式;
(4)提高网络编程能力,增加实际应用能力;
(5)学会文献检索的基本方法和综合运用文献的能力。
1.3 设计平台
Microsoft Visual C++ 6.0
2、 设计原理
IP 是 ICP/IP 协议体系中的网络层协议,TCP、UDP、ICMP 和 IGMP 等其他协议都是以
IP 协议为基础的。程序中用到的 Winpcap 是 UNIX 下的 lipbcap 移植到 Windows 下的产物,
是 Win32 环境下数据包捕获的开放代码函数库。Winpcap 由内核级的数据包过滤器,底层
动态链接库(packet.dll)和一个高层的独立于系统的库(wpcap.dll)组成。
2.1 IP 协议
IP 是 TCP/IP 模型中的网络层协议,又称为互联网协议,是支持网间互连的数据报协议,
它与 TCP 协议一起构成了 TCP/IP 协议族的核心。它提供网间连接的完善功能,包括 IP 数
据报规定互联网范围内的 IP 地址格式。在因特网中 IP 协议是能使连接到网上的所有计算机
网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何
厂家生产的计算机系统,只要遵守 IP 协议就可以与因特网互连互通。IP 地址具有唯一性。
IP 协议的特点如下:
① IP 协议是一种不可靠、无连接的数据报传送协议。