arp 已知mac找ip_知道IP查MAC地址,知道MAC地址查IP

这篇博客介绍了如何在Windows环境下利用ARP协议查询局域网内的IP地址与MAC地址对应关系。提供了多种方法,包括使用DOS命令如arp和nbtstat,以及通过编程实现,特别提到了在Windows 9x和Windows 2000中查询的差异。此外,还探讨了从MAC地址查找IP地址的挑战,并提及了IPMan工具在Windows 9x下的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(即在局域网内

,

知道

IP

MAC

地址,知道

MAC

地址查

IP

)

你可以使用

arp

程序(

WINDOWS

自带)

eg:

arp

-a

192.168.0.1

如果使用程序查的话,你需要去实现一个

ARP

RARP

协议的软件

如果只是查看一下对应关系,可以登陆到以太网交换机上查看

IP

MAC

之间的对应

Windows9x

中,可按如下思路进行:

1

、建立局域网内

IP

地址

--MAC

地址对照表:

调用

icmp.dll

中的

IcmpSendEcho

函数对一个地址发一个

ping

操作。

成功后马上调用

Iphlpapi.dll

中的

GetIpNetTable

函数来取所有的

ARP

表,从中找出

所关心的

MAC

地址。

保存

IP

地址和

MAC

地址。

依此类推,取得局域网内所有

IP

地址和

MAC

地址的对照表。

(可取范围为

IPADDR

and

SUBMASK

子网范围内的对照表)

2

、做一个查询界面。

Windows2000

中,应该可以更简单一些。因为它支持更多的函数如

SendARP

IP

to

MAC

较容易:

方法

1.

DOS

命令

:

nbtstat

-a

IP

方法

2.

DOS

命令

:

ping

IP

然后

arp

-a

方法

3.

仿照

nbtstat

,向对方的

137

端口发数据包,包的内容如下(

C

代码)

BYTE

b[50]={0x0,0x00,0x0,0x10,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,

0x20,0x43,0x4b,0x41,0x41,0x41,0x41,0x41,0x41,0x41,

0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,

0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,

0x41,0x41,0x41,0x0,0x0,0x21,0x0,0x1};

(这是发

nbtstat

命令后用

IPMan

截获的),对方会向你返回一个数据包,

其中有对方的工作组,主机名,用户名,

MAC

地址。当然,返回包的格式要

自己分析,也可以查

RFC

文档。你自己的端口可以随便取一个值。

方法

4.

win9x

下可用

IPMan

直接发

ARP

方法

5.

win2000

下可用

SendArp()

直接发

ARP

----------------------------------------------------------------

MAC

to

IP

似乎较困难。

Win9x

IPMan

有此项功能,但我试了一下似乎不行。

来自:

zw84611,

时间:

2001-10-7

19:37:00,

ID

659172

发出去了,是用

VC

写的。因为我不喜欢

Delphi5

udp

控件。其实用

delphi

也一样。很

简单的,就是向对方

137

端口发内容为

BYTE

b[50]={0x0,0x00,0x0,0x10,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,

0x20,0x43,0x4b,0x41,0x41,0x41,0x41,0x41,0x41,0x41,

0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,

0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,

0x41,0x41,0x41,0x0,0x0,0x21,0x0,0x1};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值