测试与设备数据终端节点的连接 - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

测试与设备数据终端节点的连接

本主题介绍如何测试设备与您账户的设备数据终端节点的连接,该终端节点是 IoT 设备用于连接 Amazon IoT的终端节点。

在要测试的设备上执行这些步骤,或者使用连接到要测试的设备的 SSH 终端会话来执行这些步骤。

查找设备数据终端节点

查找设备数据终端节点
  1. Amazon IoT 控制台中,在导航窗格底部附近,选择 Settings(设置)。

  2. Settings(设置)页面的 Device data endpoint(设备数据终端节点)容器中,找到 Endpoint(终端节点)值并复制它。您的终端节点值对您来说是唯一的, Amazon Web Services 账户 与以下示例类似:a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com.

  3. 保存设备数据终端节点,以便在以下步骤中使用。

快速测试连接

此步骤测试与设备数据终端节点的常规连接,但不测试设备将使用的特定端口。此测试使用通用程序,通常足以了解您的设备是否可以连接到 Amazon IoT。

如果要测试与设备将使用的特定端口的连接,请跳过此步骤并继续 让应用程序测试与设备数据终端节点和端口的连接

快速测试设备数据终端节点
  1. 在设备的终端或命令行窗口中,将示例设备数据终端节点 (a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com) 替换为您账户的设备数据终端节点,然后输入此命令。

    Linux
    ping -c 5 a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com
    Windows
    ping -n 5 a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com
  2. 如果 ping 显示类似于以下内容的输出,则表示它已成功连接到设备数据终端节点。虽然它没有 Amazon IoT 直接与之通信,但它确实找到了服务器,而且 Amazon IoT 很可能可以通过此端点访问服务器。

    PING a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com (xx.xx.xxx.xxx) 56(84) bytes of data. 64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=1 ttl=231 time=127 ms 64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=2 ttl=231 time=127 ms 64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=3 ttl=231 time=127 ms 64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=4 ttl=231 time=127 ms 64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=5 ttl=231 time=127 ms

    如果您对此结果满意,则可以在此处停止测试。

    如果想要测试与 Amazon IoT使用的特定端口的连接,请继续 让应用程序测试与设备数据终端节点和端口的连接

  3. 如果 ping 没有返回成功输出,请检查终端节点值以确保您拥有正确的终端节点,然后检查设备与互联网的连接。

让应用程序测试与设备数据终端节点和端口的连接

可以通过使用 nmap 来执行更彻底的连接测试。此步骤测试 nmap 是否已安装在设备上。

检查设备上的 nmap
  1. 在要测试的设备上的终端或命令行窗口中,输入此命令以查看是否已安装 nmap

    nmap --version
  2. 如果您看到类似于以下内容的输出,则表示已安装 nmap,您可以继续 测试与设备数据终端节点和端口的连接

    Nmap version 6.40 ( http://nmap.org ) Platform: x86_64-koji-linux-gnu Compiled with: nmap-liblua-5.2.2 openssl-1.0.2k libpcre-8.32 libpcap-1.5.3 nmap-libdnet-1.12 ipv6 Compiled without: Available nsock engines: epoll poll select
  3. 如果您没有看到类似于上一步中所示的响应,则必须在设备上安装 nmap。为设备的操作系统选择相关步骤。

Linux

此步骤要求您具有在计算机上安装软件的权限。

在 Linux 计算机上安装 nmap
  1. 在设备的终端或命令行窗口中,输入与所运行的 Linux 版本对应的命令。

    1. Debian 或 Ubuntu:

      sudo apt install nmap
    2. CentOS 或 RHEL:

      sudo yum install nmap
  2. 使用以下命令测试安装:

    nmap --version
  3. 如果您看到类似于以下内容的输出,则表示已安装 nmap,您可以继续 测试与设备数据终端节点和端口的连接

    Nmap version 6.40 ( http://nmap.org ) Platform: x86_64-koji-linux-gnu Compiled with: nmap-liblua-5.2.2 openssl-1.0.2k libpcre-8.32 libpcap-1.5.3 nmap-libdnet-1.12 ipv6 Compiled without: Available nsock engines: epoll poll select
macOS

此步骤要求您具有在计算机上安装软件的权限。

在 macOS 计算机上安装 nmap
  1. 在浏览器中打开 https://nmap.org/download#macosx,然后下载最新稳定的安装程序。

    出现提示时,选择 “打开方式” DiskImageInstaller。

  2. 在安装窗口中,将程序包移到 Applications(应用程序)文件夹。

  3. Finder(查找工具)中,找到 Applications(应用程序)文件夹中的 nmap-xxxx-mpkg 程序包,Ctrl-click 该程序包,然后选择 Open(打开)以打开该程序包。

  4. 查看安全对话框。如果您已准备好安装 nmap,请选择 Open(打开)以安装 nmap

  5. Terminal 中,使用以下命令测试安装。

    nmap --version
  6. 如果您看到类似于以下内容的输出,则表示已安装 nmap,您可以继续 测试与设备数据终端节点和端口的连接

    Nmap version 7.92 ( https://nmap.org ) Platform: x86_64-apple-darwin17.7.0 Compiled with: nmap-liblua-5.3.5 openssl-1.1.1k nmap-libssh2-1.9.0 libz-1.2.11 nmap-libpcre-7.6 nmap-libpcap-1.9.1 nmap-libdnet-1.12 ipv6 Compiled without: Available nsock engines: kqueue poll select
Windows

此步骤要求您具有在计算机上安装软件的权限。

在 Windows 计算机上安装 nmap
  1. 在浏览器中打开 https://nmap.org/download#windows,然后下载安装程序的最新稳定版本。

    出现提示时,请选择 Save file(保存文件)。下载文件后,从下载文件夹中打开它。

  2. 在安装程序文件完成下载后,打开已下载的 nmap-xxxx-setup.exe 以安装应用程序。

  3. 安装程序时接受默认设置。

    对于此测试,您不需要 Npcap 应用程序。如果您不想安装它,则可以取消选择该选项。

  4. Command 中,使用以下命令测试安装。

    nmap --version
  5. 如果您看到类似于以下内容的输出,则表示已安装 nmap,您可以继续 测试与设备数据终端节点和端口的连接

    Nmap version 7.92 ( https://nmap.org ) Platform: i686-pc-windows-windows Compiled with: nmap-liblua-5.3.5 openssl-1.1.1k nmap-libssh2-1.9.0 nmap-libz-1.2.11 nmap-libpcre-7.6 Npcap-1.50 nmap-libdnet-1.12 ipv6 Compiled without: Available nsock engines: iocp poll select

测试与设备数据终端节点和端口的连接

测试设备数据终端节点和端口
  1. 在设备的终端或命令行窗口中,将示例设备数据终端节点 (a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com) 替换为您账户的设备数据终端节点,然后输入此命令。

    nmap -p 8443 a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com
  2. 如果 nmap 显示类似于以下内容的输出,nmap 能够通过所选端口成功连接到您的设备数据终端节点。

    Starting Nmap 7.92 ( https://nmap.org ) at 2022-02-18 16:23 Pacific Standard Time Nmap scan report for a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com (xx.xxx.147.160) Host is up (0.036s latency). Other addresses for a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com (not scanned): xx.xxx.134.144 xx.xxx.55.139 xx.xxx.110.235 xx.xxx.174.233 xx.xxx.74.65 xx.xxx.122.179 xx.xxx.127.126 rDNS record for xx.xxx.147.160: ec2-EXAMPLE-160.eu-west-1.compute.amazonaws.com PORT STATE SERVICE 8443/tcp open https-alt MAC Address: 00:11:22:33:44:55 (Cimsys) Nmap done: 1 IP address (1 host up) scanned in 0.91 seconds
  3. 如果 nmap 没有返回成功输出,请检查终端节点值以确保您拥有正确的终端节点,然后检查设备与互联网的连接。

通过将步骤 1 中使用的端口 8443 替换为要测试的端口,您可以测试设备数据终端节点上的其他端口,例如主 HTTPS 端口 443。