View a markdown version of this page

IP 检测器 - AWS IoT Greengrass

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

IP 检测器

IP 检测器组件 (aws.greengrass.clientdevices.IPDetector) 执行以下操作:

  • 监控 Greengrass 核心设备的网络连接信息。这些信息包括核心设备的网络端点以及 MQTT 代理运行的端口。

  • 更新 AWS IoT Greengrass 云服务中核心设备的连接信息。

客户端设备可以使用 Greengrass 云发现来检索关联核心设备的连接信息。然后,客户端设备可以尝试连接到每台核心设备,直至其成功连接。

注意

客户端设备是本地 IoT 设备,连接到 Greengrass 核心设备以发送 MQTT 消息和数据进行处理。有关更多信息,请参阅 与本地 IoT 设备交互

IP 检测器组件将核心设备的现有连接信息替换为其检测到的信息。由于此组件会删除现有信息,因此您可以使用 IP 检测器组件,也可以手动管理连接信息。

版本

此组件具有以下版本:

  • 2.2.x

  • 2.1.x

  • 2.0.x

Type

此组件是一个插件组件 (aws.greengrass.plugin)。Greengrass Nucleus 在与该 Nucleus 相同的 Java 虚拟机(JVM)中运行该组件。当您在核心设备上更改此组件的版本时,Nucleus 会重新启动。

此组件使用与 Greengrass Nucleus 相同的日志文件。有关更多信息,请参阅 监控 AWS IoT Greengrass 日志

有关更多信息,请参阅 组件类型

操作系统

此组件可以安装在运行以下操作系统的核心设备上:

  • Linux

  • Windows

要求

此组件具有以下要求:

  • Greengrass 服务角色必须与 AWS 账户 您的关联并允许和权限。iot:GetThingShadow iot:UpdateThingShadow

  • 核心设备的 AWS IoT 策略必须允许该greengrass:UpdateConnectivityInfo权限。有关更多信息,请参阅AWS IoT 数据平面操作策略支持客户端设备的最低 AWS IoT 政策

  • 如果您将核心设备的 MQTT 代理组件配置为使用默认端口 8883 以外的端口,则必须使用 IP 检测器 v2.1.0 或更高版本。将其配置为报告代理运行的端口。

  • 如果您的网络设置很复杂,IP 检测器组件可能无法识别客户端设备可以连接的核心设备的端点。如果 IP 检测器组件无法管理端点,则您必须改为手动管理核心设备端点。例如,如果核心设备位于将 MQTT 代理端口转发给它的路由器后方,则您必须将路由器的 IP 地址指定为核心设备的端点。有关更多信息,请参阅 管理核心设备端点

  • 支持在 VPC 中运行 IP 检测器组件。

依赖项

部署组件时, AWS IoT Greengrass 还会部署其依赖项的兼容版本。这意味着您必须满足组件及其所有依赖关系的要求,才能成功部署组件。本部分列出了此组件的已发布版本的依赖关系,以及定义每个依赖关系的组件版本的语义版本约束。您还可以在 AWS IoT Greengrass 控制台中查看每个组件版本的依赖关系。在组件详细信息页面上,查找依赖关系列表。

2.2.3

下表列出了此组件版本 2.2.3 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.17.0 软性
2.2.2

下表列出了此组件版本 2.2.2 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.16.0 软性
2.2.1

下表列出了此组件版本 2.2.1 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.15.0 软性
2.2.0

下表列出了此组件版本 2.2.0 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.14.0 软性
2.1.8 – 2.1.9

下表列出了此组件的版本 2.1.8 和 2.1.9 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.13.0 软性
2.1.7

下表列出了此组件的版本 2.1.7 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.12.0 软性
2.1.6

下表列出了此组件的版本 2.1.6 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.11.0 软性
2.1.5

下表列出了此组件的版本 2.1.5 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.10.0 软性
2.1.4

下表列出了此组件的版本 2.1.4 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.9.0 软性
2.1.3

下表列出了此组件的版本 2.1.3 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.8.0 软性
2.1.2

下表列出了此组件的版本 2.1.2 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.7.0 软性
2.1.1

下表列出了此组件的版本 2.1.1 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.6.0 软性
2.1.0 and 2.0.2

下表列出了此组件的版本 2.1.0 和 2.0.2 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.5.0 软性
2.0.1

下表列出了此组件的版本 2.0.1 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.4.0 软性
2.0.0

下表列出了此组件版本 2.0.0 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.2.0 <2.3.0 软性

有关组件依赖关系的更多信息,请参阅组件配方参考

配置

此组件提供您可以在部署组件时自定义的以下配置参数。

2.2.x
defaultPort

(可选)此组件检测到 IP 地址时要用于报告的 MQTT 代理端口。如果您将 MQTT 代理配置为使用默认端口 8883 以外的端口,则必须指定此参数。

默认值:8883

includeIPv4LoopbackAddrs

(可选)您可以启用此选项来检测和报告 IPv4 环回地址。这些是 IP 地址(例如 localhost),设备可以在此与自身通信。在核心设备和客户端设备运行于同一系统的测试环境中使用此选项。

默认值:false

(可选)您可以启用此选项来检测和报告 IPv4 链路本地地址。如果核心设备的网络没有动态主机配置协议(DHCP)或静态分配的 IP 地址,请使用此选项。

默认值:false

includeIPv6LoopbackAddrs

(可选)您可以启用此选项来检测和报告 IPv6 环回地址。这些是 IP 地址(例如 localhost),设备可以在此与自身通信。在核心设备和客户端设备运行于同一系统的测试环境中使用此选项。您必须将 includeIPv4Addrs 设置为 false 并将 includeIPv6Addrs 设置为 true 才能使用此选项。

默认值:false

(可选)您可以启用此选项来检测和报告 IPv6 链路本地地址。如果核心设备的网络没有动态主机配置协议(DHCP)或静态分配的 IP 地址,请使用此选项。您必须将 includeIPv4Addrs 设置为 false 并将 includeIPv6Addrs 设置为 true 才能使用此选项。

默认值:false

includeIPv4Addrs

(可选)默认设置为 true。您可以启用此选项来发布在核心设备上找到 IPv4 的地址。

默认值:true

includeIPv6Addrs

(可选)您可以启用此选项来发布在核心设备上找到 IPv6 的地址。将 includeIPv4Addrs 设置为 false 以使用此选项。

默认值:false

2.1.x
defaultPort

(可选)此组件检测到 IP 地址时要用于报告的 MQTT 代理端口。如果您将 MQTT 代理配置为使用默认端口 8883 以外的端口,则必须指定此参数。

默认值:8883

includeIPv4LoopbackAddrs

(可选)您可以启用此选项来检测和报告 IPv4 环回地址。这些是 IP 地址(例如 localhost),设备可以在此与自身通信。在核心设备和客户端设备运行于同一系统的测试环境中使用此选项。

默认值:false

(可选)您可以启用此选项来检测和报告 IPv4 链路本地地址。如果核心设备的网络没有动态主机配置协议(DHCP)或静态分配的 IP 地址,请使用此选项。

默认值:false

2.0.x
includeIPv4LoopbackAddrs

(可选)您可以启用此选项来检测和报告 IPv4 环回地址。这些是 IP 地址(例如 localhost),设备可以在此与自身通信。在核心设备和客户端设备运行于同一系统的测试环境中使用此选项。

默认值:false

(可选)您可以启用此选项来检测和报告 IPv4 链路本地地址。如果核心设备的网络没有动态主机配置协议(DHCP)或静态分配的 IP 地址,请使用此选项。

默认值:false

本地日志文件

此组件使用与 Greengrass Nucleus 组件相同的日志文件。

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
查看此组件的日志
  • 在核心设备上运行以下命令可实时查看此组件的日志文件。将/greengrass/v2C:\greengrass\v2替换为 AWS IoT Greengrass 根文件夹的路径。

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

更改日志

下表介绍每个组件版本的更改。

版本

更改

2.2.4

更新 Greengrass nucleus 版本 2.17.0 版本的组件版本。

2.2.3

Greengrass nucleus 版本 2.16.0 版本的版本已更新。

2.2.2

Greengrass nucleus 版本 2.15.0 版本的版本已更新。

2.2.1

Greengrass nucleus 版本 2.14.0 版本的版本已更新。

2.2.0

对 Greengrass Nucleus 版本 2.13.0 发行版进行了版本更新。

新特征
  • 添加对的支持 IPv6。现在,您可以使用 IPv6 本地消息传递。

2.1.9

错误修复和改进
  • 将获取的 IP 步骤调整为仅发送调试日志级别的日志。

2.1.8

版本更新为 Greengrass Nucleus 版本 2.12.0 发布版。

2.1.7

版本更新为 Greengrass Nucleus 版本 2.11.0 发布版。

2.1.6

版本更新为 Greengrass Nucleus 版本 2.10.0 发布版。

2.1.5

对 Greengrass Nucleus版本 2.9.0 发行版进行了版本更新。

2.1.4

版本更新为 Greengrass Nucleus 版本 2.8.0 发布版。

2.1.3

版本更新为 Greengrass Nucleus 版本 2.7.0 发布版。

2.1.2

错误修复和改进
  • 改进了此组件在某些情况下记录的错误消息。

  • 版本更新为 Greengrass Nucleus 版本 2.6.0 发布版。

2.1.1

版本更新为 Greengrass Nucleus 版本 2.5.0 发布版。

2.1.0

改进
  • 添加了 defaultPort 参数,使您能够使用非默认 MQTT 代理端口。

  • 更新以使日志消息更加清晰。

2.0.2

版本更新为 Greengrass Nucleus 版本 2.4.0 发布版。

2.0.1

版本更新为 Greengrass Nucleus 版本 2.3.0 发布版。

2.0.0

初始版本。