Creación y configuración de un punto de conexión privado para IoT Central

Puede conectar los dispositivos a la aplicación IoT Central mediante un punto de conexión privado en una instancia de Azure Virtual Network.

Los puntos de conexión privados usan direcciones IP privadas de un espacio de direcciones de red virtual para conectar los dispositivos de forma privada a la aplicación de IoT Central. El tráfico de red entre los dispositivos de la red virtual y la plataforma de IoT atraviesa la red virtual y un vínculo privado de la red troncal de Microsoft, lo que elimina la exposición en la red pública de Internet. Aprenda a crear y configurar un punto de conexión privado para la aplicación de IoT Central.

Requisitos previos

Creación de un punto de conexión privado

Hay varias maneras de crear un punto de conexión privado para la aplicación de IoT Central:

Para crear un punto de conexión privado en una aplicación de IoT Central existente:

  1. En el Azure Portal, vaya a la aplicación y seleccione Redes.

  2. Seleccione la pestaña Conexiones de puntos de conexión privados y después, seleccione Punto de conexión privado.

  3. En la pestaña Aspectos básicos, escriba un nombre y seleccione una región para el punto de conexión privado. Después, seleccione Siguiente: Recurso.

  4. La pestaña Recurso se rellena automáticamente automáticamente. Seleccione Siguiente: Máquinas virtuales.

  5. En la pestaña de Red virtual, seleccione la Red virtual y la Subred donde desea implementar el punto de conexión privado.

  6. En la misma pestaña, en la sección Configuración de IP privada, seleccione Asignar dinámicamente la dirección IP.

  7. Seleccione Next: DNS (Siguiente: DNS).

  8. En la pestaña DNS , seleccione para Integrar con zona DNS privada. El DNS privado resuelve todos los puntos de conexión necesarios en direcciones IP privadas de la red virtual:

    Captura de pantalla de Azure Portal que muestra la integración de DNS privada.

    Nota

    Debido a las funcionalidades de escalado de IoT Central, debe usar la opción Integración de DNS privado si es posible. Si por algún motivo no puede usar esta opción, consulte Uso de un servidor DNS personalizado.

  9. Seleccione Siguiente: Etiquetas.

  10. En la pestaña Etiquetas, configure las etiquetas que necesite y, a continuación, seleccione Siguiente: Revisar y crear.

  11. Revise los detalles de configuración y seleccione Crear para crear el recurso de punto de conexión privado.

Captura de pantalla de Azure Portal que muestra el resumen para crear un punto de conexión privado.

Comprobación de la creación del punto de conexión privado

Una vez completada la creación del punto de conexión privado, puede acceder a él en el Azure Portal.

Para ver todos los puntos de conexión privados creados para la aplicación:

  1. En el Azure Portal, vaya a la aplicación de IoT Central y seleccione Redes.

  2. Seleccione la pestaña Conexiones de punto de conexión privado. En la tabla se muestran todos los puntos de conexión privados creados para la aplicación.

Uso de un servidor DNS personalizado

En algunas situaciones, es posible que no pueda realizar la integración con la zona DNS privada de la red virtual. Por ejemplo, puede usar los servidores DNS propios o bien crear registros DNS con los archivos de host de las máquinas virtuales. En esta sección se describe cómo llegar a las zonas DNS.

  1. Instale chocolatey.

  2. Instale ARMclient:

    choco install armclient
    
  3. Inicio de sesión con ARMClient:

    armclient login 
    
  4. Use el siguiente comando para obtener las zonas DNS privadas para la aplicación de IoT Central. Reemplace los marcadores de posición por los detalles de la aplicación de IoT Central:

    armclient GET /subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.IoTCentral/IoTApps/<AppName>/privateLinkResources?api-version=2021-11-01-preview
    
  5. Compruebe la respuesta. Las zonas DNS necesarias están en la matriz requiredZoneNames en la carga de respuesta:

    {  
      "value": [  
        {  
          "id": "/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.IoTCentral/IoTApps/<AppName>/privateLinkResources/iotApp",  
          "name": "ioTApp",  
          "type": "Microsoft.IoTCentral/IoTApps/privateLinkResources",  
          "location": "<the region of your application>",  
          "properties": {  
          "groupId": "iotApp",  
          "requiredMembers":[  
            "<IoTCentral Name>",  
            "<DPS Name>",  
            "<IoTHub1 Name>",  
            "<IoTHub2 Name>",  
            "<EH1 Name>",  
            "<EH2 Name>"],  
          "requiredZoneNames": [  
            "privatelink.azureiotcentral.com",  
            "privatelink.azure-devices.net",  
            "privatelink.servicebus.windows.net",  
            "privatelink.azure-devices-provisioning.net"],  
          "provisioningState": "Succeeded"}  
        }  
      ]  
    }
    
  6. En el Azure Portal, vaya al punto de conexión privado y seleccione Configuración de DNS. En esta página, puede encontrar la información necesaria para la asignación de direcciones IP para el nombre DNS.

Captura de pantalla de Azure Portal que muestra la configuración de DNS privada.

Advertencia

Esta información le permite rellenar el servidor DNS personalizado con los registros necesarios. Si es posible, debe integrar con las zonas DNS privadas de la red virtual y no configurar su propio servidor DNS personalizado. Los puntos de conexión privados para las aplicaciones de IoT Central difieren de otros servicios PaaS de Azure. En algunas situaciones, como IoT Central escalado automático, IoT Central escala horizontalmente el número de centros de IoT a los que se puede acceder a través del punto de conexión privado. Si decide rellenar su propio servidor DNS personalizado, es su responsabilidad actualizar los registros DNS cada vez que IoT Central escale automáticamente y, posteriormente, quitar registros cuando el número de centros de IoT se escale.

Restricción del acceso público

Para restringir el acceso público para los dispositivos IoT Central, desactive el acceso desde puntos de conexión públicos. Después de desactivar el acceso público, los dispositivos no se pueden conectar a IoT Central desde redes públicas y deben usar un punto de conexión privado:

  1. En el Azure Portal, vaya a la aplicación de IoT Central y seleccione Redes.

  2. En la pestaña Acceso público , seleccione Deshabilitado para el acceso a la red pública.

  3. Opcionalmente, puede definir una lista de direcciones IP o intervalos que se pueden conectar al punto de conexión público de la aplicación de IoT Central.

  4. Seleccione Guardar.

Conexión a un punto de conexión privado

Al deshabilitar el acceso a la red pública para la aplicación de IoT Central, los dispositivos no pueden conectarse al punto de conexión global de Device Provisioning Service (DPS). Esto sucede porque el único FQDN para DPS tiene una dirección IP directa en la red virtual. Ahora no se puede acceder al punto de conexión global.

Al configurar un punto de conexión privado para la aplicación de IoT Central, el punto de conexión de servicio de IoT Central se actualiza para reflejar el punto de conexión de DPS directo.

Actualice el código del dispositivo para usar el punto de conexión directo de DPS.

Captura de pantalla de la aplicación de IoT Central que muestra el punto de conexión de DPS directo.

Procedimientos recomendados

  • No use direcciones URL de subdominio de vínculo privado para conectar los dispositivos a IoT Central. Use siempre la dirección URL de DPS que se muestra en IoT Central después de crear el punto de conexión privado.

  • Uso de zonas DNS privadas proporcionadas por Azure para la administración de DNS. Evite usar su propio servidor DNS, ya que tendría que actualizar constantemente la configuración de DNS para mantenerse al día mientras IoT Central escala automáticamente sus recursos.

  • Si crea varios puntos de conexión privados para el mismo recurso de IoT Central, la zona DNS puede sobrescribir los FQDN, por lo que debe agregarlos de nuevo.

Limitaciones

  • Actualmente, la conectividad privada solo está habilitada para las conexiones de dispositivos a los centros de IoT y DPS subyacentes en la aplicación de IoT Central. La web de IoT Central y las API siguen funcionando a través de sus puntos de conexión públicos.

  • El punto de conexión privado debe estar en la misma región que la red virtual.

  • Cuando deshabilita el acceso a la red pública:

    • Los dispositivos simulados de IoT Central no funcionan porque no tienen conectividad con la red virtual.

    • No se puede acceder al punto de conexión global de DPS (global.device-provisioning.net). Actualice el firmware del dispositivo para conectarse a la instancia directa de DPS. Puede encontrar la dirección URL de DPS directa en la página Grupos de conexiones de dispositivos de la aplicación de IoT Central.

  • No puede cambiar el nombre de IoT Central después de configurar un punto de conexión privado.

  • No puede mover el punto de conexión privado ni IoT Central a otro grupo de recursos o suscripción.

  • La compatibilidad se limita a IPv4. No se admite IPv6.

Solución de problemas

Si tiene problemas para conectarse a un punto de conexión privado, use la siguiente guía de solución de problemas:

Compruebe el estado de conexión.

Asegúrese de que el estado de conexión del punto de conexión privado está establecido en aprobado.

  1. En el Azure Portal, vaya a la aplicación y seleccione Redes.
  2. Seleccione la pestaña Conexión de puntos de conexión privados. Compruebe que el estado de conexión es Aprobado para el punto de conexión privado.

Ejecución de comprobaciones dentro de la red virtual

Use las siguientes comprobaciones para investigar problemas de conectividad desde dentro de la misma red virtual. Implemente una máquina virtual en la misma red virtual donde creó el punto de conexión privado. Inicie sesión en la máquina virtual para ejecutar las siguientes pruebas.

Para asegurarse de que la resolución de nombres funciona correctamente, itere todos los FQDN de la configuración DNS del punto de conexión privado y ejecute las pruebas mediante nslookup, Test-NetConnection u otras herramientas similares para comprobar que cada DNS coincide con su dirección IP correspondiente.

Además, ejecute el siguiente comando para comprobar que el nombre DNS de cada FQDN coincide con la dirección IP correspondiente.

#replace the <...> placeholders with the correct values 
nslookup iotc-….azure-devices.net 

El resultado es similar a la salida siguiente:

#Results in the following output: 
Server:127.0.0.53 
Address:127.0.0.53#53 

Non-authoritative answer: xyz.azure-devices.net
canonical name = xyz.privatelink.azure-devices.net
Name:xyz.privatelink.azure-devices.net
Address: 10.1.1.12

Si encuentra un FQDN que no coincida con su dirección IP correspondiente, corrija el servidor DNS personalizado. Si no usa un servidor DNS personalizado, cree una incidencia de soporte técnico.

Compruebe si tiene varios puntos de conexión privados.

La configuración de DNS se puede sobrescribir si crea o elimina varios puntos de conexión privados para una aplicación de IoT Central:

  • En el Azure Portal, vaya al recurso de punto de conexión privado.
  • En la sección DNS, asegúrese de que hay entradas para todos los recursos necesarios: IoT Hubs, Event Hubs, DPS y los FQDN de IoT Central.
  • Compruebe que las direcciones IP (y las direcciones IP de otros puntos de conexión privados que usan esta zona DNS) se reflejan en el registro A del DNS.
  • Quite los registros A de las IP de puntos de conexión privados anteriores que ya se hayan eliminado.

Otras sugerencias de solución de problemas

Si después de probar todas estas comprobaciones sigue experimentando un problema, pruebe la guía de solución de problemas del punto de conexión privado.

Si todas las comprobaciones se realizan correctamente y los dispositivos todavía no pueden establecer una conexión con IoT Central, póngase en contacto con el equipo de seguridad corporativo responsable de los firewalls y las redes en general. Entre las razones potenciales del error se incluyen:

  • Configuración incorrecta de la red virtual de Azure
  • Configuración incorrecta de un dispositivo de firewall
  • Configuración incorrecta de rutas definidas por el usuario en la red virtual de Azure
  • Un proxy mal configurado entre el dispositivo y los recursos de IoT Central

Pasos siguientes

Ahora que ha aprendido a crear un punto de conexión privado para la aplicación, este es el siguiente paso sugerido: