• 大小: 4.5MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-04
  • 语言: C/C++
  • 标签: ARP协议  VC  MAC地址  

资源简介

使用vc编写 运用wpacp函数调用实现。 一套控制台的,一套MFC窗口的,想要就下哈,里面有说明文档。

资源截图

代码片段和文件信息

#include “iostream.h“
#pragma comment(lib“ws2_32.lib“)
#define HAVE_REMOTE
#include “pcap.h“
#include “windows.h“
#include

//******************************************************************************************************************
//*****************************************全局变量声明*************************************************************
//******************************************************************************************************************
CRITICAL_SECTION cs;//临界区定义
int myThreadCount = 0;//线程数目
pcap_if_t *d;//全局变量,存放选中的网络设备
pcap_pkthdr* pktHd;//存放收到包的包头
const unsigned char* pktDt;//存放收到包的数据域
pcap_t *pt;//全局变量,存放打开的网络连接句柄

unsigned int iptosendniptosendhlocalipnlNetMaskHostNum;//iptosendn要发送的网络序的目的IP地址,iptosendh要发的主机序的IP地址
unsigned char localmac[6]={000000};               //存放本机MAC地址


#pragma pack(1)//操作系统界地址对齐方式换为网络对齐方式
struct ethernet_head//以太网物理帧头
{unsigned char dest_mac[6];
 unsigned char source_mac[6];
 unsigned short eh_type;
};
struct arp_head//ARP数据包数据部分结构
{unsigned short hardware_type;  // 2硬件类型:Ethernet网接口类型为1
 unsigned short protocol_type;  // 2协议类型:IP协议类型为0x0800
 unsigned char add_len;         // 1硬件地址长度:MAC地址长度为6字节
 unsigned char pro_len;         // 1协议地址长度:IP地址长度为4字节
 unsigned short option;         // 2ARP操作类型:1表示请求,2表示应答
 unsigned char sour_addr[6];    // 6源MAC地址:发送方的MAC地址
 unsigned long sour_ip;         // 4源IP地址:发送方的IP地址
 unsigned char dest_addr[6];    // 6目的MAC地址:在ARP请求中没有意义,在ARP响应中为接收方的MAC地址
 unsigned long dest_ip;         // 4目的IP地址:在ARP请求中为待解析的IP地址,在ARP响应中为接收方的IP地址
 unsigned char padding[18];     // 18填充字节:用来补齐最小长度
};
struct arp_packet//ARP数据包结构
{ ethernet_head eth;
  arp_head arp;
}myPacket;//全局变量,存放ARP请求数据包

#pragma pack()//界地址对齐方式回到操作系统方式
//******************************************************************************************************************
//*****************************************全局函数声明*************************************************************
//******************************************************************************************************************
void MakePacket(int sourceipint destiparp_packet *parp_packet);//封包函数声明
DWORD WINAPI threadofrcv(LPVOID);//接收线程声明
DWORD WINAPI threadofsnt(LPVOID);//发送线程声明


//******************************************************************************************************************
//*****************************************程序主函数***************************************************************
//******************************************************************************************************************
main()
{
cout<<“**********************************************************************“< cout<<“**********************************************************************“< cout<<“*****************ARP协议获取局域网活动主机MAC地址程序*****************“< cout<<“**********************************************************************“< cout<<

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        285  2009-10-28 22:35  2120090356_苑爱泉_第二次作业\作业说明.txt

     文件     371712  2009-10-29 00:27  2120090356_苑爱泉_第二次作业\控制台版\2120090356_苑爱泉_第二次作业_控制台版.doc

     文件     229424  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\可执行程序\mmm.exe

     文件      35828  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\fxsjb.obj

     文件          0  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\fxsjb.sbr

     文件    2040832  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\mmm.bsc

     文件     229424  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\mmm.exe

     文件     337588  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\mmm.ilk

     文件    4831540  2009-10-28 16:56  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\mmm.pch

     文件     599040  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\mmm.pdb

     文件         16  2009-10-28 16:54  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\myResult

     文件     173056  2009-10-29 00:13  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\vc60.idb

     文件      94208  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\Debug\vc60.pdb

     文件      13040  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\fxsjb.cpp

     文件       4286  2009-10-25 21:14  2120090356_苑爱泉_第二次作业\控制台版\源代码\mmm.dsp

     文件        514  2008-10-28 23:41  2120090356_苑爱泉_第二次作业\控制台版\源代码\mmm.dsw

     文件      66560  2009-10-29 00:27  2120090356_苑爱泉_第二次作业\控制台版\源代码\mmm.ncb

     文件      48640  2009-10-29 00:27  2120090356_苑爱泉_第二次作业\控制台版\源代码\mmm.opt

     文件       1024  2009-10-28 16:59  2120090356_苑爱泉_第二次作业\控制台版\源代码\mmm.plg

     文件         64  2009-10-29 00:16  2120090356_苑爱泉_第二次作业\控制台版\源代码\myResult

     文件     453632  2009-10-29 00:26  2120090356_苑爱泉_第二次作业\界面版\2120090356_苑爱泉_第二次作业_界面版.doc

     文件     114733  2009-10-28 21:58  2120090356_苑爱泉_第二次作业\界面版\可执行程序\sharp.exe

     文件     114733  2009-10-28 23:17  2120090356_苑爱泉_第二次作业\界面版\源代码\Debug\sharp.exe

     文件     435448  2009-10-28 23:17  2120090356_苑爱泉_第二次作业\界面版\源代码\Debug\sharp.ilk

     文件      26703  2009-10-27 21:40  2120090356_苑爱泉_第二次作业\界面版\源代码\Debug\sharp.obj

     文件    5569268  2009-10-11 02:33  2120090356_苑爱泉_第二次作业\界面版\源代码\Debug\sharp.pch

     文件     418816  2009-10-28 23:17  2120090356_苑爱泉_第二次作业\界面版\源代码\Debug\sharp.pdb

     文件       2840  2009-10-28 22:12  2120090356_苑爱泉_第二次作业\界面版\源代码\Debug\sharp.res

     文件      65913  2009-10-28 23:17  2120090356_苑爱泉_第二次作业\界面版\源代码\Debug\sharpDlg.obj

     文件     105458  2009-10-11 02:33  2120090356_苑爱泉_第二次作业\界面版\源代码\Debug\StdAfx.obj

............此处省略33个文件信息

评论

共有 条评论