获取指定IP的MAC地址
2009-09-03 00:32
495 查看
#include "stdafx.h"
#include <WinSock2.h>
#include <Iphlpapi.h>
#pragma comment(lib , "IpHlpApi.lib")
#pragma comment(lib , "WS2_32.lib")
int main(int argc,char * argv[])
{
int iReturn;
DWORD dwIP;
BYTE byMAC[6];
DWORD dwLen;
WSADATA WsaData;
WSAStartup(MAKEWORD(2, 0), &WsaData);
__try
{
printf("IP2MAC Ver 1.0 -- Get MAC address from IP address though ARP request./n/n");
if (argc != 2)
{
printf("Usage: %s /n", argv[0]);
__leave;
}
dwIP = inet_addr(argv[1]);
if (dwIP == INADDR_NONE)
{
printf("Invalid IP address: %s./n", argv[1]);
__leave;
}
// 发送ARP查询包获得 MAC 地址
dwLen = 6;
iReturn = SendARP(dwIP, 0, (PULONG) &byMAC, &dwLen);
if (iReturn != NO_ERROR)
{
printf("Error: Send ARP request. /nBe sure that connectting to %s need no gateway./n", argv[1]);
__leave;
}
printf("%.2X-%.2X-%.2X-%.2X-%.2X-%.2X/n",
byMAC[0],
byMAC[1],
byMAC[2],
byMAC[3],
byMAC[4],
byMAC[5]);
}
__finally
{
WSACleanup();
}
return 0;
}
#include <WinSock2.h>
#include <Iphlpapi.h>
#pragma comment(lib , "IpHlpApi.lib")
#pragma comment(lib , "WS2_32.lib")
int main(int argc,char * argv[])
{
int iReturn;
DWORD dwIP;
BYTE byMAC[6];
DWORD dwLen;
WSADATA WsaData;
WSAStartup(MAKEWORD(2, 0), &WsaData);
__try
{
printf("IP2MAC Ver 1.0 -- Get MAC address from IP address though ARP request./n/n");
if (argc != 2)
{
printf("Usage: %s /n", argv[0]);
__leave;
}
dwIP = inet_addr(argv[1]);
if (dwIP == INADDR_NONE)
{
printf("Invalid IP address: %s./n", argv[1]);
__leave;
}
// 发送ARP查询包获得 MAC 地址
dwLen = 6;
iReturn = SendARP(dwIP, 0, (PULONG) &byMAC, &dwLen);
if (iReturn != NO_ERROR)
{
printf("Error: Send ARP request. /nBe sure that connectting to %s need no gateway./n", argv[1]);
__leave;
}
printf("%.2X-%.2X-%.2X-%.2X-%.2X-%.2X/n",
byMAC[0],
byMAC[1],
byMAC[2],
byMAC[3],
byMAC[4],
byMAC[5]);
}
__finally
{
WSACleanup();
}
return 0;
}
相关文章推荐
- C#通过ARP获取指定IP的MAC地址
- 获取指定IP的终端的MAC地址
- Linux 下获取LAN中指定IP的网卡的MAC(物理地址)
- 通过 ARP 协议获取局域网内指定 IP 地址的机器的 MAC 地址
- Linux 下获取LAN中指定IP的网卡的MAC(物理地址)
- Linux 下获取LAN中指定IP的网卡的MAC(物理地址)
- C#通过ARP获取指定IP的MAC地址
- 获取指定IP的终端的MAC地址
- C#获取IP及MAC地址
- ASP.NET技术获取IP与MAC地址的方法
- 获取iP及Mac地址
- Java获取访问服务端的客户端IP和MAC地址
- ASP.NET技术获取IP与MAC地址的方法
- 获取指定(访客)IP的所有信息,地址、邮政编码、国家、经纬度等的API
- 正则表达式――获取指定IP的物理地址(二)
- Android获取Ethernet、WIFI的ip和mac地址
- Linux C 网络编程 - 获取本地 ip 地址,mac,通过域名获取对应的 ip
- windows 命令方式查找指定IP的MAC地址
- javaWeb快速获取服务器的IP和对应的Mac地址
- JAVASCRIPT获取客户端IP及MAC地址