计算机网络课程设计(第六章)解析ARP数据包
1、应用Winpcap编程的一般步骤:1)获取网络设备列表;2)选择网卡并打开;3)当捕获数据包时,可能亟冁雇乏需要设置过滤器;4)捕获数据包或者发送数据包。Winpcap功能强大,效率高,使用方便。但是,使用前需要进行一定的准备工作,步骤如下:
2、安装驱动程序。下载Winpcap Driver和DDL并安装,安装后重启机器:
3、下载wpdpack(De箪滹埘麽veloper's pack)【推荐链接:http://pan.baidu.com/s/1miwKjt2密码:ua4v)解压后会看到其中包含docs、Include、lib、Examples等文件夹:
4、在VC中设定Include目录及Library目录。具体做法:打开VC后,点击“Tools->Option->Dir髫潋啜缅ectories”,在include files中添加……\wpdpack\Include目录(步骤2中得到的);在Library files中添加……\wpdpack\Lib目录:
5、课程设计要求: 通过编制程序,获取网络中的ARP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。
6、经验操作指导:程序的具体要求如下所示: 1)以命令行的形式运行,如下所示: >解析AR霸烹钟爷P.exe 6.txt 【注意】,“解析ARP”为程序名;“6.txt”为日志文件名。 2)程序输出内容如下所示: 源IP地址:输出ARP消息格式中的源IP地址字段; 源MAC地址:输出ARP消息格式中的源物理地址字段; 目的IP地址:输出ARP消息格式中的目的IP地址字段; 目的MAC地址:输出ARP消息格式中的目的物理地址字段; 操作:输出ARP消息格式中的操作字段,若为ARP请求,则为1,若为ARP 应答,则为2; 时间:该ARP包产生的时间。 3)当程序接收到键盘输入Ctrl+C时退出。
7、编写程序代码:打开事先安装好的编译程序: 开始---所有程序---visual C++ 6.0,双击打开:
8、创建此次程序的文件名、物理位置、配置等信息: 新建---文件---如图:
9、在C++中开始创建编写程序:【注意】下载Word版完整程序代码,请到百度文库如下: ★搜索:计算机网络课程设计(第六章)解析ARP数据包(完整程序代码) 凸何闪鬯★链接:http://wenku.baidu.com/view/41499a5fff4733687e21af45b307e87101f6f836部分程序代码:#include<conio.h>#include<fstream.h>#include<iomanip.h>#include "pcap.h"#include<winsock2.h>#pragma comment(lib,"ws2_32.lib")#pragma comment(lib,"wpcap.lib")struct arppkt{ unsigned short hdtyp; unsigned short protyp; unsigned char hdsize; unsigned char prosize; unsigned short op; u_char smac[6]; u_char sip[4]; u_char dmac[6]; u_char dip[4];}; ………………………………………………
10、1.保存程序;开始编译(源程序obj); 快速查找错误的位置方法指导:双击错误信息,屏幕自动会定位到出错位置!
11、2.开始组建(应用程序.exe);3.执行(完成); 保存并退出;
12、执行所建程序:打开命令提示窗口: 开始---搜索程序和文件(输入:cmd):
13、定位至所创建程序的物理位置: >某盘---某文件夹---子文件夹:
14、以命令行的形式执行: >应用程序名(exe) 日志文件名(txt)
15、执行结果:如图所示:
16、关闭各个软件,找出物理位置备份!!!OK OK OK ^_^