Een privé-eindpunt maken en configureren voor IoT Central
U kunt uw apparaten verbinden met uw IoT Central-toepassing met behulp van een privé-eindpunt in een virtueel Azure-netwerk.
Privé-eindpunten gebruiken privé-IP-adressen van een virtueel netwerkadresruimte om uw apparaten privé te verbinden met uw IoT Central-toepassing. Netwerkverkeer tussen apparaten in het virtuele netwerk en het IoT-platform doorkruist het virtuele netwerk en een privékoppeling op het Backbone-netwerk van Microsoft, waardoor blootstelling op het openbare internet wordt geëlimineerd. In dit artikel leest u hoe u een privé-eindpunt maakt voor uw IoT Central-toepassing.
Vereisten
- Een actief Azure-abonnement. Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
- Een IoT Central-toepassing. Zie Een IoT Central-toepassing maken voor meer informatie.
- Een virtueel netwerk in uw Azure-abonnement. Zie Een virtueel netwerk maken voor meer informatie. Als u de stappen in deze handleiding wilt uitvoeren, hebt u geen Bastion-host of virtuele machines nodig.
Een privé-eindpunt maken
Er zijn verschillende manieren om een privé-eindpunt te maken voor IoT Central-toepassing:
- Gebruik Azure Portal om rechtstreeks een privé-eindpuntresource te maken. Gebruik deze optie als u geen toegang hebt tot de IoT Central-toepassing die het privé-eindpunt nodig heeft.
- Privé-eindpunt maken op een bestaande IoT Central-toepassing
Een privé-eindpunt maken op een bestaande IoT Central-toepassing:
Navigeer in Azure Portal naar uw toepassing en selecteer Netwerken.
Selecteer het tabblad Privé-eindpuntverbindingen en selecteer vervolgens + Privé-eindpunt.
Voer op het tabblad Basisinformatie een naam in en selecteer een regio voor uw privé-eindpunt. Selecteer vervolgens Volgende: Resource.
Het tabblad Resource wordt automatisch voor u ingevuld. Selecteer Volgende: Virtueel netwerk.
Selecteer op het tabblad Virtueel netwerk het virtuele netwerk en het subnet waar u uw privé-eindpunt wilt implementeren.
Selecteer op hetzelfde tabblad in de sectie Privé-IP-configuratie dynamisch IP-adres toewijzen.
Selecteer Volgende: DNS.
Selecteer Ja voor Integratie met privé-DNS-zone op het tabblad DNS. Met de privé-DNS worden alle vereiste eindpunten omgezet in privé-IP-adressen in uw virtuele netwerk:
Notitie
Vanwege de mogelijkheden voor automatisch schalen in IoT Central moet u indien mogelijk de Privé-DNS integratieoptie gebruiken. Als u deze optie om een of andere reden niet kunt gebruiken, raadpleegt u Een aangepaste DNS-server gebruiken.
Selecteer Volgende: Tags.
Configureer op het tabblad Tags alle tags die u nodig hebt en selecteer vervolgens Volgende: Beoordelen en maken.
Controleer de configuratiedetails en selecteer Vervolgens Maken om uw privé-eindpuntresource te maken.
Het maken van privé-eindpunten controleren
Wanneer het maken van het privé-eindpunt is voltooid, kunt u het openen in Azure Portal.
Als u alle privé-eindpunten wilt zien die voor uw toepassing zijn gemaakt:
Navigeer in Azure Portal naar uw IoT Central-toepassing en selecteer Netwerken.
Selecteer het tabblad Privé-eindpuntverbindingen . In de tabel ziet u alle privé-eindpunten die voor uw toepassing zijn gemaakt.
Een aangepaste DNS-server gebruiken
In sommige situaties kunt u mogelijk niet integreren met de privé-DNS-zone van het virtuele netwerk. U kunt bijvoorbeeld uw eigen DNS-server gebruiken of DNS-records maken met behulp van de hostbestanden op uw virtuele machines. In deze sectie wordt beschreven hoe u toegang krijgt tot de DNS-zones.
Installeer chocolatey.
ARMClient installeren:
choco install armclient
Meld u aan met ARMClient:
armclient login
Gebruik de volgende opdracht om de privé-DNS-zones voor uw IoT Central-toepassing op te halen. Vervang de tijdelijke aanduidingen door de details voor uw IoT Central-toepassing:
armclient GET /subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.IoTCentral/IoTApps/<AppName>/privateLinkResources?api-version=2021-11-01-preview
Controleer het antwoord. De vereiste DNS-zones bevinden zich in de
requiredZoneNames
matrix in de nettolading van het antwoord:{ "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"} } ] }
Navigeer in Azure Portal naar uw privé-eindpunt en selecteer DNS-configuratie. Op deze pagina vindt u de vereiste informatie voor de IP-adrestoewijzing aan de DNS-naam.
Waarschuwing
Met deze informatie kunt u uw aangepaste DNS-server vullen met de benodigde records. Indien mogelijk moet u integreren met de privé-DNS-zones van het virtuele netwerk en niet uw eigen aangepaste DNS-server configureren. Privé-eindpunten voor IoT Central-toepassingen verschillen van andere Azure PaaS-services. In sommige situaties, zoals automatisch schalen van IoT Central, schaalt IoT Central het aantal IoT Hubs uit dat toegankelijk is via het privé-eindpunt. Als u ervoor kiest om uw eigen aangepaste DNS-server te vullen, is het uw verantwoordelijkheid om de DNS-records bij te werken wanneer IoT Central automatisch wordt geschaald en later records verwijderen wanneer het aantal IoT-hubs wordt ingeschaald.
Openbare toegang beperken
Als u openbare toegang voor uw apparaten wilt beperken tot IoT Central, schakelt u de toegang uit vanaf openbare eindpunten. Nadat u openbare toegang hebt uitgeschakeld, kunnen apparaten geen verbinding maken met IoT Central vanuit openbare netwerken en moeten ze een privé-eindpunt gebruiken:
Navigeer in Azure Portal naar uw IoT Central-toepassing en selecteer Netwerken.
Selecteer Uitgeschakeld voor openbare netwerktoegang op het tabblad Openbare toegang.
U kunt desgewenst een lijst met IP-adressen/bereiken definiëren die verbinding kunnen maken met het openbare eindpunt van uw IoT Central-toepassing.
Selecteer Opslaan.
Tip
Als u ervoor kiest om een lijst met IP-adressen/bereiken te definiëren die verbinding kunnen maken met het openbare eindpunt van uw IoT Central-toepassing, moet u het IP-adres van elke proxy opnemen die uw apparaten gebruiken om verbinding te maken met uw IoT Central-toepassing.
Verbinding maken met een privé-eindpunt
Wanneer u openbare netwerktoegang voor uw IoT Central-toepassing uitschakelt, kunnen uw apparaten geen verbinding maken met het globale eindpunt van Device Provisioning Service (DPS). Dit gebeurt omdat de enige FQDN voor DPS een direct IP-adres in uw virtuele netwerk heeft. Het globale eindpunt is nu onbereikbaar.
Wanneer u een privé-eindpunt configureert voor uw IoT Central-toepassing, wordt het IoT Central-service-eindpunt bijgewerkt met het directe DPS-eindpunt.
Werk de apparaatcode bij om het directe DPS-eindpunt te gebruiken.
Aanbevolen procedures
Gebruik geen URL's voor subdomeinen van private link om uw apparaten te verbinden met IoT Central. Gebruik altijd de DPS-URL die wordt weergegeven in uw IoT Central-toepassing nadat u het privé-eindpunt hebt gemaakt.
Gebruik door Azure geleverde privé-DNS-zones voor DNS-beheer. Vermijd het gebruik van uw eigen DNS-server, omdat u uw DNS-configuratie voortdurend moet bijwerken, omdat ioT Central de resources automatisch schaalt.
Als u meerdere privé-eindpunten voor dezelfde IoT Central-resource maakt, kan de DNS-zone de FQDN's overschrijven, zodat u ze opnieuw moet toevoegen.
Beperkingen
Momenteel is privéconnectiviteit alleen ingeschakeld voor apparaatverbindingen met de onderliggende IoT-hubs en DPS in de IoT Central-toepassing. De ioT Central-webgebruikersinterface en API's blijven werken via hun openbare eindpunten.
Het privé-eindpunt moet zich in dezelfde regio bevinden als uw virtuele netwerk.
Wanneer u openbare netwerktoegang uitschakelt:
Gesimuleerde IoT Central-apparaten werken niet omdat ze geen verbinding hebben met uw virtuele netwerk.
Het globale DPS-eindpunt (
global.device-provisioning.net
) is niet toegankelijk. Werk de firmware van uw apparaat bij om verbinding te maken met het directe DPS-exemplaar. U vindt de directe DPS-URL op de pagina Apparaatverbindingsgroepen in uw IoT Central-toepassing.
U kunt de naam van uw IoT Central-toepassing niet wijzigen nadat u een privé-eindpunt hebt geconfigureerd.
U kunt uw privé-eindpunt of de IoT Central-toepassing niet verplaatsen naar een andere resourcegroep of een ander abonnement.
Ondersteuning is beperkt tot IPv4. IPv6 wordt niet ondersteund.
Probleemoplossing
Als u problemen ondervindt bij het maken van verbinding met een privé-eindpunt, gebruikt u de volgende richtlijnen voor probleemoplossing:
De verbindingsstatus controleren
Zorg ervoor dat de verbindingsstatus van uw privé-eindpunt is ingesteld op Goedgekeurd.
- Navigeer in Azure Portal naar uw toepassing en selecteer Netwerken.
- Selecteer het tabblad Verbinding met privé-eindpunten. Controleer of de verbindingsstatus is goedgekeurd voor uw privé-eindpunt.
Controles uitvoeren binnen het virtuele netwerk
Gebruik de volgende controles om verbindingsproblemen vanuit hetzelfde virtuele netwerk te onderzoeken. Implementeer een virtuele machine in hetzelfde virtuele netwerk waar u het privé-eindpunt hebt gemaakt. Meld u aan bij de virtuele machine om de volgende tests uit te voeren.
Om ervoor te zorgen dat naamomzetting goed werkt, voert u alle FQDN's in de DNS-configuratie van het privé-eindpunt uit en voert u de tests uit met behulp van nslookup
, Test-NetConnection
of andere vergelijkbare hulpprogramma's om te controleren of elke DNS overeenkomt met het bijbehorende IP-adres.
Voer bovendien de volgende opdracht uit om te controleren of de DNS-naam van elke FQDN overeenkomt met het bijbehorende IP-adres.
#replace the <...> placeholders with the correct values
nslookup iotc-….azure-devices.net
Het resultaat ziet eruit als de volgende uitvoer:
#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
Als u een FQDN vindt die niet overeenkomt met het bijbehorende IP-adres, herstelt u de aangepaste DNS-server. Als u geen aangepaste DNS-server gebruikt, maakt u een ondersteuningsticket.
Controleer of u meerdere privé-eindpunten hebt
DNS-configuratie kan worden overschreven als u meerdere privé-eindpunten voor één IoT Central-toepassing maakt of verwijdert:
- Navigeer in Azure Portal naar de privé-eindpuntresource.
- Controleer in de sectie DNS of er vermeldingen zijn voor alle vereiste resources: IoT Hubs, Event Hubs, DPS en IoT Central-FQDN's.
- Controleer of de IP-adressen (en IP-adressen voor andere privé-eindpunten die gebruikmaken van deze DNS-zone) worden weergegeven in de A-record van de DNS.
- Verwijder A-records voor IP-adressen van oudere privé-eindpunten die eerder zijn verwijderd.
Andere tips voor probleemoplossing
Als u na het uitvoeren van al deze controles nog steeds een probleem ondervindt, probeert u de gids voor het oplossen van problemen met privé-eindpunten.
Als alle controles zijn geslaagd en uw apparaten nog steeds geen verbinding kunnen maken met IoT Central, neemt u contact op met het bedrijfsbeveiligingsteam dat verantwoordelijk is voor firewalls en netwerken in het algemeen. Mogelijke oorzaken voor fouten zijn onder andere:
- Onjuiste configuratie van uw virtuele Azure-netwerk
- Onjuiste configuratie van een firewallapparaat
- Onjuiste configuratie van door de gebruiker gedefinieerde routes in uw virtuele Azure-netwerk
- Een onjuist geconfigureerde proxy tussen het apparaat en IoT Central-resources
Volgende stappen
Nu u hebt geleerd hoe u een privé-eindpunt voor uw toepassing maakt, volgt u de voorgestelde volgende stap: