如何在局域网中捕获pc?

时间:2011-05-04 11:03:06

标签: linux

我需要知道什么时候特定的p​​c(我知道ip和MAC)插在LAN上。我想避免所有轮询机制,是否有可能在linux下实现这一点?也许通过嗅探icmp数据包?

THX

2 个答案:

答案 0 :(得分:1)

如果您控制网关,您可以嗅探流量并查看是否有来自该主机的任何内容(通过MAC或IP地址)。

如果没有,事情变得复杂,在大多数情况下需要进行某种轮询 - 在交换网络中,您通常不会看到发往另一台主机的流量;检查“online-ness”的最可靠方法是ARP,可能是使用arping(或者自己做ARP请求并嗅探ARP回复的流量)。

请注意,这些方法都没有“确定无误” - 使用powernap等工具,(临时)离线主机可能似乎在线。

答案 1 :(得分:0)

您可以使用NMAP通过简单的ping类型扫描来扫描您的网络,以查看哪些主机在线,而不是。这是一种轮询机制,但除非您可以对网络中的路由器/交换机进行编程,以告知您的MAC或IP地址XYZ何时开始发送流量,我不知道有任何其他方法可以执行此操作。