Quickstart: Een privé-DNS-zone in Azure maken met behulp van Azure PowerShell
Dit artikel leidt u stapsgewijs door de procedure voor het maken van uw eerste privé-DNS-zone en -record met behulp van Azure PowerShell.
Notitie
Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.
Een DNS-zone wordt gebruikt voor het hosten van de DNS-records voor een specifiek domein. Als u uw domein wilt hosten in Azure DNS, moet u een DNS-zone maken voor die domeinnaam. Alle DNS-records voor uw domein worden vervolgens gemaakt binnen deze DNS-zone. Als u een privé-DNS-zone wilt publiceren naar uw virtuele netwerk, geeft u de lijst met virtuele netwerken op die records in de zone mogen omzetten. Deze worden gekoppelde virtuele netwerken genoemd. Als automatische registratie is ingeschakeld, werkt Azure DNS ook de zonerecords bij wanneer er een virtuele machine wordt gemaakt, het IP-adres ervan wordt gewijzigd of deze wordt verwijderd.
Vereisten
Als u nog geen abonnement op Azure hebt, maakt u een gratis account aan voordat u begint.
U kunt deze quickstart desgewenst voltooien met behulp van de Azure CLI.
Azure Cloud Shell
Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell gebruiken met Cloud Shell om met Azure-services te werken. U kunt de vooraf geïnstalleerde Cloud Shell-opdrachten gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.
Om Azure Cloud Shell op te starten:
Optie | Voorbeeld/koppeling |
---|---|
Selecteer Uitproberen in de rechterbovenhoek van een code- of opdrachtblok. Als u Try It selecteert, wordt de code of opdracht niet automatisch gekopieerd naar Cloud Shell. | |
Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. | |
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. |
Azure Cloud Shell gebruiken:
Start Cloud Shell.
Selecteer de knop Kopiëren op een codeblok (of opdrachtblok) om de code of opdracht te kopiëren.
Plak de code of opdracht in de Cloud Shell-sessie door Ctrl+Shift+V in Windows en Linux te selecteren of door Cmd+Shift+V te selecteren in macOS.
Selecteer Enter om de code of opdracht uit te voeren.
De resourcegroep maken
Eerst maakt u een resourcegroep die de DNS-zone gaat bevatten:
New-AzResourceGroup -name MyAzureResourceGroup -location "eastus"
Een privé-DNS-zone maken
Een DNS-zone wordt gemaakt met de cmdlet New-AzPrivateDnsZone
.
In het volgende voorbeeld wordt een virtueel netwerk gemaakt met de naam myAzureVNet. Vervolgens wordt een DNS-zone met de naam private.contoso.com gemaakt in de resourcegroep MyAzureResourceGroup, wordt de DNS-zone gekoppeld aan het virtuele netwerk MyAzureVnet en wordt automatische registratie ingeschakeld.
Install-Module -Name Az.PrivateDns -force
$backendSubnet = New-AzVirtualNetworkSubnetConfig -Name backendSubnet -AddressPrefix "10.2.0.0/24"
$vnet = New-AzVirtualNetwork `
-ResourceGroupName MyAzureResourceGroup `
-Location eastus `
-Name myAzureVNet `
-AddressPrefix 10.2.0.0/16 `
-Subnet $backendSubnet
$zone = New-AzPrivateDnsZone -Name private.contoso.com -ResourceGroupName MyAzureResourceGroup
$link = New-AzPrivateDnsVirtualNetworkLink -ZoneName private.contoso.com `
-ResourceGroupName MyAzureResourceGroup -Name "mylink" `
-VirtualNetworkId $vnet.id -EnableRegistration
Als u alleen een zone voor naamomzetting wilt maken (geen automatische registratie van hostnamen), kunt u afzien van parameter -EnableRegistration
.
Lijst met privé-DNS-zones weergeven
Door de zonenaam weg te laten uit Get-AzPrivateDnsZone
, kunt u een opsomming maken van alle zones in een resourcegroep. Deze bewerking retourneert een matrix met zoneobjecten.
$zones = Get-AzPrivateDnsZone -ResourceGroupName MyAzureResourceGroup
$zones
Door zowel de zonenaam als de resourcegroepnaam uit Get-AzPrivateDnsZone
weg te laten, kunt u een opsomming maken van alle zones in het Azure-abonnement.
$zones = Get-AzPrivateDnsZone
$zones
De virtuele testmachines maken
Maak nu twee virtuele machines, zodat u uw DNS-privézone kunt testen:
New-AzVm `
-ResourceGroupName "myAzureResourceGroup" `
-Name "myVM01" `
-Location "East US" `
-subnetname backendSubnet `
-VirtualNetworkName "myAzureVnet" `
-addressprefix 10.2.0.0/24 `
-OpenPorts 3389
New-AzVm `
-ResourceGroupName "myAzureResourceGroup" `
-Name "myVM02" `
-Location "East US" `
-subnetname backendSubnet `
-VirtualNetworkName "myAzureVnet" `
-addressprefix 10.2.0.0/24 `
-OpenPorts 3389
Het maken van een virtuele machine duurt enkele minuten.
Een extra DNS-record maken
U kunt recordsets maken met behulp van de cmdlet New-AzPrivateDnsRecordSet
. In het volgende voorbeeld wordt een record gemaakt met de relatieve naam db in de DNS-zone private.contoso.com in de resourcegroep MyAzureResourceGroup. De volledig gekwalificeerde naam van de recordset is db.private.contoso.com. Het recordtype is 'A', met IP-adres '10.2.0.4' en de TTL is 3600 seconden.
New-AzPrivateDnsRecordSet -Name db -RecordType A -ZoneName private.contoso.com `
-ResourceGroupName MyAzureResourceGroup -Ttl 3600 `
-PrivateDnsRecords (New-AzPrivateDnsRecordConfig -IPv4Address "10.2.0.4")
DNS-records weergeven
Als u de DNS-records in uw zone wilt weergeven,voert u de volgende opdracht uit:
Get-AzPrivateDnsRecordSet -ZoneName private.contoso.com -ResourceGroupName MyAzureResourceGroup
De privézone testen
U kunt nu de naamomzetting voor uw privézone private.contoso.com testen.
VM’s configureren voor het toestaan van inkomende ICMP
U kunt de pingopdracht gebruiken voor het testen van naamomzetting. Configureer de firewall dus op beide virtuele machines om inkomende ICMP-pakketten toe te staan.
Maak verbinding met myVM01 met behulp van de gebruikersnaam en het wachtwoord die u hebt gebruikt bij het maken van de virtuele machine.
Open een Windows PowerShell-venster met beheerdersbevoegdheden.
Voer de volgende opdracht uit:
New-NetFirewallRule –DisplayName "Allow ICMPv4-In" –Protocol ICMPv4
Herhaal voor myVM02.
De VM's pingen op naam
Ping vanuit de myVM02 Windows PowerShell-opdrachtprompt myVM01 met de naam van de automatisch geregistreerde hostnaam:
ping myVM01.private.contoso.com
Als het goed is, ziet u een uitvoer die er ongeveer als volgt uitziet:
PS C:\> ping myvm01.private.contoso.com Pinging myvm01.private.contoso.com [10.2.0.4] with 32 bytes of data: Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time=1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Ping statistics for 10.2.0.4: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 1ms, Average = 0ms PS C:\>
Ping nu de db-naam die u eerder hebt gemaakt:
ping db.private.contoso.com
Als het goed is, ziet u een uitvoer die er ongeveer als volgt uitziet:
PS C:\> ping db.private.contoso.com Pinging db.private.contoso.com [10.2.0.4] with 32 bytes of data: Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Ping statistics for 10.2.0.4: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milliseconds: Minimum = 0ms, Maximum = 0ms, Average = 0ms PS C:\>
Resources opschonen
Verwijder resourcegroep MyAzureResourceGroup als u deze niet langer nodig hebt om de resources te verwijderen die u in dit artikel hebt gemaakt.
Remove-AzResourceGroup -Name MyAzureResourceGroup