HA文档 目录

  1. 主页
  2. HA文档
  3. HA文档
  4. 位置追踪
  5. 通过网络扫描追踪设备

通过网络扫描追踪设备

这篇文章是系列文章的第4/8篇:

通过网络探测,HomeAssistant确定哪些设备是连入局域网的——也就是可以确定哪些设备是在家中的。
以下的device_tracker组件平台是基于网络探测的:

  • ping:通过ping(ICMP)探测目标是否在线。
  • nmap:通过运行nmap扫描器探测目标。
  • bluetooth_tracker:通过蓝牙确定目标是否存在。
  • bluetooth_le_tracker:通过低功耗蓝牙(蓝牙4.0)确定目标是否存在。

我们以nmap作为例子,展现如何在device_tracker组件下配置nmap_tracker平台。

【准备】
nmap是一款开源的网络扫描器,通过发送探测包检测网络中的设备。
Device_tracker组件的nmap_tracker平台,使用nmap对网络进行探测,从而发现哪些设备在家中。

在使用nmap_tracker平台之前,需要安装nmap软件。
在linux下,一般使用命令
sudo apt-get install net-tools nmap
即可完成nmap的安装。

在Windows和MacOS下,nmap的安装,参见https://nmap.org/book/inst-windows.htmlhttps://nmap.org/book/inst-macosx.html。(在windows下,注意安装中要包含npcap

【配置】
nmap_tracker平台的可配置项:

  • hosts(必配项):扫描目标的网络地址,可以是单独的IP,也可以是子网。如“192.168.1.5”、“192.168.1.0/24”。
  • home_interval(可选项):当推测设备在家中的时候,扫描的间隔时间(分钟)。
  • exclude(可选项):排除扫描目标中的一些地址。
  • scan_options(可选项):运行nmap扫描命令的参数,缺省是-F –host-timeout 5s(代表快速扫描,超时时间5秒)。

看一些nmap_tracker平台的配置实例:

【注意点】
nmap_tracker平台对设备的识别是基于网络MAC地址的,因此:

  • 对于非本网段的目标地址(无法获得网络MAC地址),无法用nmap_tracker进行追踪。此时建议使用ping平台。
  • 当扫描识别到mac地址后,如果是新的mac地址会被自动添加到know_devices.yaml中;如果已经在know_devices.yaml中存在,会使用know_devices.yaml中对应的设备属性。

遇到问题了?快来学习免费在线课程吧,博学老司机在线答疑,找到更多志同道合的HA玩家一起进步

此文不允许转载,如需转载请与BD@hachina.io联系。

这篇文章对您有用吗? 0 0