java - RaspBerry Pi 命令行/应用程序 - 列出 IP 设备

标签 java linux networking ip raspberry-pi2

我正在尝试制作一个非常简单的 Raspberry Pi 应用程序,它会自动更新同一网络上的所有 IP 地址、Mac 地址及其各自的设备名称。我完全不知道从哪里开始,关于如何完成这项工作有什么建议吗?

我玩游戏是为了连接 LCD 并将其安装在我的路由器旁边,这样我就可以轻松访问连接到我网络的所有设备。

感谢您的帮助!

最佳答案

“arp-scan”命令怎么样?

$ sudo apt-get install arp-scan
$ sudo arp-scan -l --interface wlan0
Interface: wlan0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.8.1 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
192.168.0.211   14:da:e9:XX:YY:ZZ       (Unknown)
192.168.0.1     1c:b1:7f:XX:YY:ZZ       (Unknown)
192.168.0.201   1c:ba:8c:XX:YY:ZZ       (Unknown)
192.168.0.202   e8:9d:87:XX:YY:ZZ       Toshiba
192.168.0.203   00:25:dc:XX:YY:ZZ       Sumitomo Electric Networks, Inc
192.168.0.210   fc:c2:de:XX:YY:ZZ       (Unknown)
192.168.0.212   64:bc:0c:XX:YY:ZZ       (Unknown)
192.168.0.207   10:6f:3f:XX:YY:ZZ       (Unknown)
192.168.0.208   90:a2:da:XX:YY:ZZ       GHEO SA
192.168.0.205   48:5d:60:XX:YY:ZZ       Azurewave Technologies, Inc.
192.168.0.210   fc:c2:de:XX:YY:ZZ       (Unknown) (DUP: 2)

12 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.8.1: 256 hosts scanned in 5.247 seconds (48.79 hosts/sec). 11 responded

您的接口(interface)可能是 eth0 而不是 wlan0。

(已添加) 因为 arp-scan 包中包含一个旧的供应商列表文件,许多设备无法获取它们的名称(表示为“(未知)”)。 要纠正这一点:

$ git clone https://github.com/royhills/arp-scan.git
$ sudo cp /usr/share/arp-scan/ieee-oui.txt{,.org}
$ sudo cp arp-scan/ieee-oui.txt /usr/share/arp-scan/

刷新文件后,我们可以得到如下输出:

$ sudo arp-scan -l --interface wlan0
Interface: wlan0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.8.1 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
192.168.0.211   14:da:e9:XX:YY:ZZ       ASUSTek COMPUTER INC.
192.168.0.1     1c:b1:7f:XX:YY:ZZ       NEC Platforms, Ltd.
192.168.0.201   1c:ba:8c:XX:YY:ZZ       Texas Instruments
192.168.0.202   e8:9d:87:XX:YY:ZZ       Toshiba
192.168.0.203   00:25:dc:XX:YY:ZZ       Sumitomo Electric Industries,Ltd
192.168.0.205   48:5d:60:XX:YY:ZZ       AzureWave Technology Inc.
192.168.0.210   fc:c2:de:XX:YY:ZZ       Murata Manufacturing Co., Ltd.
192.168.0.212   64:bc:0c:XX:YY:ZZ       LG Electronics
192.168.0.208   90:a2:da:XX:YY:ZZ       GHEO SA
192.168.0.207   10:6f:3f:XX:YY:ZZ       BUFFALO.INC

11 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.8.1: 256 hosts scanned in 5.750 seconds (44.52 hosts/sec). 10 responded

所有设备都正确获得了它们的(供应商)名称。

关于java - RaspBerry Pi 命令行/应用程序 - 列出 IP 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34347439/

相关文章:

java - 有没有办法获得 PowerMockito 类的 Jacoco 代码覆盖率?

java - 从服务器上的响应返回后,如何将这些值设置为 List<Models> ?

java - 用于 Java 的 SQL 服务器 stub

c - Linux系统上的文件信息?

html - 如何在不支付域名和主机费用的情况下学习制作网站(仅用于练习)?

networking - 模拟器联网ip地址和虚拟路由器

java - iText 缩小表格列以适应内容

linux - 了解 linux `free -m` 中的缓冲区/缓存

linux - 将文件从一个位置复制到另一位置

linux - 结合sento()写writev()?