【发布时间】:2018-11-09 20:25:54
【问题描述】:
我有一个应用程序可以检查某个 IP 是否在本地网络上。该 IP 属于用作家庭自动化设备的树莓派。 运行命令
arp -a
从终端或我的应用程序中,我得到了本地网络上所有设备的列表,但我的树莓派并不总是列出。 ping完设备后,每次都会出现在列表中。 任何想法出了什么问题?
【问题讨论】:
标签: arp
我有一个应用程序可以检查某个 IP 是否在本地网络上。该 IP 属于用作家庭自动化设备的树莓派。 运行命令
arp -a
从终端或我的应用程序中,我得到了本地网络上所有设备的列表,但我的树莓派并不总是列出。 ping完设备后,每次都会出现在列表中。 任何想法出了什么问题?
【问题讨论】:
标签: arp
这就是 ARP 的工作方式。 ARP 条目仅在需要时创建。第一次需要与本地网络上的 IP 通信时,您的设备会广播 ARP 查询,然后缓存响应。没有任何东西可以主动填充 LAN 上所有 IP 的缓存。
此外,如果有一段时间没有使用旧条目,它们可能会从缓存中删除。
【讨论】:
nmap 之类的工具可以自动执行此操作。