给定PC的MAC地址,我可以找到它的IP吗?


Answers:


8

如果您连接到同一个广播域,则可以执行以下操作arp -a,向您显示ARP缓存。从这里你可以匹配MAC到IP。


arp -an将跳过名称解析,因此可以明显快于arp -a特别是在Android或嵌入式设备上。
ccpizza

7

如果目标设备和您的* nix框位于同一IP子网上(我具体指的是一个真正的IP子网,不是同一个交换机,相同的VLAN,甚至是同一个广播域,或者其他任何有时被称为一个“子网”通俗地说),以及他们是否有机会交谈,相互交谈已经,那么目标设备的IP - > MAC地址的映射可能已经在你的Unix机器的ARP表。你可以arp -a看看桌子。

如果它们在同一个子网上但尚未相互通信,则通常可以通过ping所有主机多播地址(224.0.0.1)或子网广播地址来强制它。

如果您不在同一个IP子网但是在同一个多播/广播域上,则可以通过运行嗅探器并从目标MAC地址查看多播或广播来获取其IP地址:

sudo tcpdump -nei $INTERFACE ether host $MAC

...其中$ INTERFACE是您想要监听的接口(可能是“en0”或“eth0”或类似的东西),$ MAC是您正在寻找的MAC地址。

要在使用嗅探器观看时触发目标设备发送多播或广播,您可以执行以下操作:ping上面提到的地址,或者重新启动目标设备,或者从交换机上拔下设备(或电源 - 循环开关)。大多数设备更有可能在启动时发送广播和多播,或者在网络链接断开一段时间后发送。


0

是的,它被称为arp(地址解析协议)。如果你使用像TCP Dump或Wireshark这样的程序,你会发现路由器/网络设备每隔一段时间就会询问“谁是[IP]”,然后该人将使用他们的mac地址进行响应。

如果您使用的是Windows,则可以打开命令行并输入“arp -a”列出您拥有的ARP记录。


1
ARP -a将返回在Windows和Linux相同的价值观
MDMarra
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.