适用范围:IoT Edge 1.5 checkmark IoT Edge 1.5
重要
IoT Edge 1.5 LTS 是受支持的版本。 IoT Edge 1.4 LTS 于 2024 年 11 月 12 日终止。 如果使用的是早期版本,请参阅 Update IoT Edge。
在工业 IoT(IIoT)方案中,你可能想要使用IoT Edge并完全隔离网络与 Internet 流量。 可以使用不同的Azure服务来实现此目的。 下图显示了工厂网络方案的参考体系结构。
在上图中,IoT Edge设备和 PaaS 服务的网络与 Internet 流量隔离。 ExpressRoute 或站点到站点 VPN 使用 Azure Private Link 服务为本地和Azure之间的流量创建加密隧道。 Azure IoT服务(如 IoT Hub、设备预配服务 (DPS)、容器注册表和Blob Storage所有支持Private Link。
ExpressRoute
ExpressRoute 允许通过与连接提供商的专用连接将本地网络扩展到 Microsoft 云。 在 IIoT 中,设备从边缘到云的连接可靠性非常重要,ExpressRoute 满足了这一需求,并提供连接运行时间的 SLA(服务级别协议)。 若要详细了解 Azure ExpressRoute 如何为专用网络中的边缘设备提供安全连接,请参阅 Azure ExpressRoute 是什么?
Azure 专用链接
Azure Private Link允许你在虚拟网络中通过专用终结点使用 Azure PaaS 服务以及 Azure 托管的客户自有服务或合作伙伴服务。 您可以使用在 Azure 上通过 ExpressRoute 专用对等互连、站点到站点(S2S)VPN 和对等虚拟网络运行的服务。 在 IIoT 中,专用链接使你可以灵活地连接不同区域中的设备。 使用专用终结点,可以禁用对外部 PaaS 资源的访问,并配置可以将流量通过防火墙发送。 若要了解有关Azure Private Link的详细信息,请参阅 什么是 Azure Private Link?
Azure DNS 专用解析程序
Azure DNS专用解析程序允许从本地环境和其他方式查询Azure DNS专用区域,而无需部署基于 VM 的 DNS 服务器。 Azure DNS专用解析程序可以更轻松地管理专用和公共 IP。 Azure DNS专用解析程序中的 DNS 转发规则集功能可帮助 IoT 管理员轻松配置规则并管理终结点应解析的地址。 若要了解有关Azure DNS专用解析程序的详细信息,请参阅 什么是Azure DNS专用解析程序?
使用 Private Link 时配置 IoT Edge 终结点。
启用私有链接后,必须将 IoT Edge 配置为使用 私有终结点的 FQDN,而不是公共服务主机名。 如果使用公共主机名,IoT Edge模块在禁用公用网络access后无法连接。
应使用哪个主机名?
| Azure服务 | 公共 FQDN | 专用链接 FQDN | 应该使用哪种IoT Edge |
|---|---|---|---|
| IoT 中心 | <hubname>.azure-devices.net |
<hubname>.privatelink.azure-devices.net |
使用 Private Link FQDN |
| DPS | global.azure-devices-provisioning.net |
global.privatelink.azure-devices-provisioning.net |
使用 Private Link FQDN |
| Azure Container Registry (ACR) | <registry>.azurecr.io |
<registry>.privatelink.azurecr.io |
使用 Private Link FQDN |
| 存储(Blob) | <account>.blob.core.chinacloudapi.cn |
<account>.privatelink.blob.core.chinacloudapi.cn |
使用 Private Link FQDN |
示例 IoT Edge config.toml (DPS 预配)
# DPS provisioning with symmetric key
[provisioning]
source = "dps"
global_endpoint = "https://global.privatelink.azure-devices-provisioning.net"
id_scope = "<scope-id>"
[provisioning.attestation]
method = "symmetric_key"
registration_id = "<registration-id>"
symmetric_key = { value = "<symmetric-key>" }
示例 IoT Edge config.toml (手动预配)
[provisioning]
source = "manual"
iothub_hostname = "<hubname>.privatelink.azure-devices.net"
device_id = "<device-id>"
[provisioning.authentication]
method = "sas"
device_id_pk = { value = "<shared-access-key>" }
DNS 要求
你的环境必须正确解析专用终结点主机名。 Ensure:
- 私有 DNS 区域配置用于 IoT Hub、DPS、ACR 和 Storage。
- Private DNS 区域链接到虚拟网络 (VNET)。
- 本地系统通过Azure DNS专用解析程序转发 DNS 查询(如果适用)。
如果未配置 DNS,IoT Edge将无法解析专用终结点 FQDN。
有关示例方案,请参阅 使用 Azure Private Link 和专用终结点来保护 Azure IoT 流量。 此示例演示工厂网络可能的配置,不用作生产就绪参考。