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

IT_*_*_07 8 networking ip-address mac-address arp

当你只有一个项目的 MAC 时,有没有办法获得 IP 地址?

MDM*_*rra 8

如果您连接到同一个广播域,您可以这样做arp -a,这将显示 ARP 缓存。从这里您可以将 MAC 与 IP 匹配。


Spi*_*iff 8

如果目标设备和您的 *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
Run Code Online (Sandbox Code Playgroud)

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

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