检测连接到我的网络的设备

检测连接到我的网络的设备

另一天,另一个问题!

我正在尝试编写一个脚本来监视我的 LAN 上连接的任何新设备,如果发现新设备,就给我发送电子邮件。

我的测试网络非常简单,仅由 1 个 cisco 2900XL 交换机组成。到目前为止,脚本可以每 2 分钟运行一次(cronjob)并查找新的 mac 地址。

如何获取找到的mac对应的IP信息? 这是我目前所拥有的:

  1. 通过 DHCP 服务器的 DHCP 租约文件进行扫描,查看分配给设备的 IP(如果设备设置为 DHCP)

  2. 如果我的网络有一个路由器,则会通过其路由表查找 mac 条目,但我的设置很简单,不需要它。

如果设备上有静态 IP,方法#1 也会失败。

对此有什么想法吗?

谢谢
-ankit

答案1

Arpwatch 已经可用,并且已经可以满足您的需求。根据您的发行版,它很容易安装。

答案2

显示 arp 表:

Linux: $ arp -an
Cisco: >show arp

更好地利用 ICMP 和 SNMP 进行设备发现。

答案3

另一个可能有用的方法是使用 nmap 并扫描整个网络。这样您就可以获取网络上连接的所有设备。http://nmap.org/download.html。只需创建一个脚本并将其作为 cron 作业运行。

相关内容