Rövid útmutató: Privát Azure DNS-feloldó létrehozása az Azure PowerShell használatával

Ez a cikk végigvezeti az első saját DNS-zóna és -rekord Azure PowerShell-lel való létrehozásának lépésein. Ha szeretné, ezt a rövid útmutatót az Azure Portalon is elvégezheti.

Feljegyzés

Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Az első lépésekhez tekintse meg az Azure PowerShell telepítését ismertető szakaszt. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

Az Azure DNS Private Resolver egy olyan szolgáltatás, amely lehetővé teszi az Azure DNS magánzónáinak lekérdezését egy helyszíni környezetből és fordítva, virtuálisgép-alapú DNS-kiszolgálók üzembe helyezése nélkül. További információkért, beleértve az előnyöket, a képességeket és a regionális rendelkezésre állást, olvassa el az Azure DNS Private Resolver ismertetése című témakört.

Az alábbi ábra a cikkben használt beállításokat foglalja össze:

A magánfeloldó összetevőit megjelenítő fogalmi ábra.

Előfeltételek

Ha nem rendelkezik Azure-előfizetéssel, mindössze néhány perc alatt létrehozhat egy ingyenes fiókot a virtuális gép létrehozásának megkezdése előtt.

Ez a cikk feltételezi, hogy telepítette az Az Azure PowerShell-modult.

Az Az.DnsResolver PowerShell-modul telepítése

Feljegyzés

Ha korábban a privát előzetes verzióban telepítette az Az.DnsResolver modult kiértékelésre, törölheti a létrehozott helyi PSRepository regisztrációját és törlését. Ezután telepítse az Az.DnsResolver modul legújabb verzióját a cikkben ismertetett lépések végrehajtásával.

Telepítse az Az.DnsResolver modult.

Install-Module Az.DnsResolver

Ellenőrizze, hogy az Az.DnsResolver modul telepítve van-e. A modul jelenlegi verziója a 0.2.1.

Get-InstalledModule -Name Az.DnsResolver

Előfizetési környezet beállítása az Azure PowerShellben

Csatlakozás PowerShellt az Azure-felhőbe.

Connect-AzAccount -Environment AzureCloud

Ha több előfizetés is létezik, a rendszer az első előfizetés-azonosítót fogja használni. Egy másik előfizetés-azonosító megadásához használja az alábbi parancsot.

Select-AzSubscription -SubscriptionObject (Get-AzSubscription -SubscriptionId <your-sub-id>)

Regisztrálja a Microsoft.Network-szolgáltató névterét a fiókjához.

Ahhoz, hogy a Microsoft.Network-szolgáltatásokat az Azure-előfizetésével használhassa, regisztrálnia kell a Microsoft.Network névterét:

A Microsoft.Network névtér regisztrálásához használja az alábbi parancsot.

Register-AzResourceProvider -ProviderNamespace Microsoft.Network

DNS-feloldópéldány létrehozása

Fontos

Az erőforrások sikeres létrehozásának ellenőrzéséhez vagy megerősítéséhez szükséges lépések nem kötelezőek. Ezeket a lépéseket ne hagyja ki. A lépések kitöltik a későbbi eljárásokban használható változókat.

Hozzon létre egy erőforráscsoportot az erőforrások üzemeltetéséhez. Az erőforráscsoportnak támogatott régióban kell lennie. Ebben a példában a hely westcentralus.

New-AzResourceGroup -Name myresourcegroup -Location westcentralus

Hozzon létre egy virtuális hálózatot a létrehozott erőforráscsoportban.

New-AzVirtualNetwork -Name myvnet -ResourceGroupName myresourcegroup -Location westcentralus -AddressPrefix "10.0.0.0/8"

Hozzon létre egy DNS-feloldót a létrehozott virtuális hálózaton.

New-AzDnsResolver -Name mydnsresolver -ResourceGroupName myresourcegroup -Location westcentralus -VirtualNetworkId "/subscriptions/<your subs id>/resourceGroups/myresourcegroup/providers/Microsoft.Network/virtualNetworks/myvnet"

Ellenőrizze, hogy a DNS-feloldó sikeresen létrejött-e, és az állapot csatlakoztatva van-e (nem kötelező). Kimenetben a dnsResolverStateCsatlakozás.

$dnsResolver = Get-AzDnsResolver -Name mydnsresolver -ResourceGroupName myresourcegroup
$dnsResolver.ToJsonString()

DNS-feloldó bejövő végpont létrehozása

Alhálózat létrehozása a virtuális hálózaton

Hozzon létre egy alhálózatot a virtuális hálózaton (Microsoft.Network/virtualNetworks/alhálózatok) a korábban hozzárendelt IP-címtérből. Az alhálózatnak legalább /28 méretűnek kell lennie (16 IP-cím).

$virtualNetwork = Get-AzVirtualNetwork -Name myvnet -ResourceGroupName myresourcegroup
Add-AzVirtualNetworkSubnetConfig -Name snet-inbound -VirtualNetwork $virtualNetwork -AddressPrefix "10.0.0.0/28"
$virtualNetwork | Set-AzVirtualNetwork

A bejövő végpont létrehozása

Hozzon létre egy bejövő végpontot a névfeloldás helyszíni vagy más privát helyről való engedélyezéséhez a magánhálózati virtuális hálózati címtér részét képező IP-cím használatával.

Tipp.

A PowerShell használatával megadhatja, hogy a bejövő végpont IP-címe dinamikus vagy statikus legyen.
Ha a végpont IP-címe dinamikusként van megadva, a cím csak akkor változik, ha a végpontot törlik és újra kiépítik. Az újraépítés során általában ugyanaz az IP-cím lesz hozzárendelve.
Ha a végpont IP-címe statikus, akkor megadhatja és újra felhasználhatja, ha a végpont újra meg van osztva. A választott IP-cím nem lehet fenntartott IP-cím az alhálózatban.

A következő parancsok dinamikus IP-címet építenek ki:

$ipconfig = New-AzDnsResolverIPConfigurationObject -PrivateIPAllocationMethod Dynamic -SubnetId /subscriptions/<your sub id>/resourceGroups/myresourcegroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/snet-inbound
New-AzDnsResolverInboundEndpoint -DnsResolverName mydnsresolver -Name myinboundendpoint -ResourceGroupName myresourcegroup -Location westcentralus -IpConfiguration $ipconfig

Statikus IP-cím megadásához használja az alábbi parancsokat. Ne használja mind a dinamikus, mind a statikus parancskészletet.

Meg kell adnia egy IP-címet a korábban létrehozott alhálózatban. A választott IP-cím nem lehet fenntartott IP-cím az alhálózatban.

A következő parancsok statikus IP-címet építenek ki:

$ipconfig = New-AzDnsResolverIPConfigurationObject -PrivateIPAddress 10.0.0.4 -PrivateIPAllocationMethod Static -SubnetId /subscriptions/<your sub id>/resourceGroups/myresourcegroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/snet-inbound
New-AzDnsResolverInboundEndpoint -DnsResolverName mydnsresolver -Name myinboundendpoint -ResourceGroupName myresourcegroup -Location westcentralus -IpConfiguration $ipconfig

A bejövő végpont megerősítése

Győződjön meg arról, hogy a bejövő végpont létrejött, és lefoglalt egy IP-címet a hozzárendelt alhálózaton belül.

$inboundEndpoint = Get-AzDnsResolverInboundEndpoint -Name myinboundendpoint -DnsResolverName mydnsresolver -ResourceGroupName myresourcegroup
$inboundEndpoint.ToJsonString()

DNS-feloldó kimenő végpont létrehozása

Alhálózat létrehozása a virtuális hálózaton

Hozzon létre egy alhálózatot a virtuális hálózatban (Microsoft.Network/virtualNetworks/alhálózatok) a korábban hozzárendelt IP-címtérből, amely eltér a bejövő alhálózattól (snet-inbound). A kimenő alhálózatnak is legalább /28 méretűnek kell lennie (16 IP-cím).

$virtualNetwork = Get-AzVirtualNetwork -Name myvnet -ResourceGroupName myresourcegroup
Add-AzVirtualNetworkSubnetConfig -Name snet-outbound -VirtualNetwork $virtualNetwork -AddressPrefix "10.1.1.0/28"
$virtualNetwork | Set-AzVirtualNetwork

A kimenő végpont létrehozása

A kimenő végpontok lehetővé teszik a névfeloldás feltételes továbbítását az Azure-ból külső DNS-kiszolgálókra.

New-AzDnsResolverOutboundEndpoint -DnsResolverName mydnsresolver -Name myoutboundendpoint -ResourceGroupName myresourcegroup -Location westcentralus -SubnetId /subscriptions/<your sub id>/resourceGroups/myresourcegroup/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/snet-outbound

A kimenő végpont megerősítése

Győződjön meg arról, hogy a kimenő végpont létrejött, és lefoglalt egy IP-címet a hozzárendelt alhálózaton belül.

$outboundEndpoint = Get-AzDnsResolverOutboundEndpoint -Name myoutboundendpoint -DnsResolverName mydnsresolver -ResourceGroupName myresourcegroup
$outboundEndpoint.ToJsonString()

DNS-feloldó továbbítási szabálykészletének létrehozása

Hozzon létre egy DNS-továbbítási szabálykészletet a létrehozott kimenő végponthoz.

New-AzDnsForwardingRuleset -Name myruleset -ResourceGroupName myresourcegroup -DnsResolverOutboundEndpoint $outboundendpoint -Location westcentralus

A DNS-továbbítási szabálykészlet megerősítése

Ellenőrizze, hogy létrejött-e a továbbítási szabálykészlet.

$dnsForwardingRuleset = Get-AzDnsForwardingRuleset -Name myruleset -ResourceGroupName myresourcegroup
$dnsForwardingRuleset.ToJsonString()

A virtuális hálózati kapcsolatok lehetővé teszik a névfeloldást azon virtuális hálózatok esetében, amelyek EGY DNS-továbbítási szabálykészlettel rendelkező kimenő végponthoz vannak csatolva.

$vnet = Get-AzVirtualNetwork -Name myvnet -ResourceGroupName myresourcegroup 
$vnetlink = New-AzDnsForwardingRulesetVirtualNetworkLink -DnsForwardingRulesetName $dnsForwardingRuleset.Name -ResourceGroupName myresourcegroup -VirtualNetworkLinkName "vnetlink" -VirtualNetworkId $vnet.Id -SubscriptionId <your sub id>

Ellenőrizze, hogy létrejött-e a virtuális hálózati kapcsolat.

$virtualNetworkLink = Get-AzDnsForwardingRulesetVirtualNetworkLink -DnsForwardingRulesetName $dnsForwardingRuleset.Name -ResourceGroupName myresourcegroup 
$virtualNetworkLink.ToJsonString()

Hozzon létre egy második virtuális hálózatot egy helyszíni vagy más környezet szimulálásához.

$vnet2 = New-AzVirtualNetwork -Name myvnet2 -ResourceGroupName myresourcegroup -Location westcentralus -AddressPrefix "12.0.0.0/8"
$vnetlink2 = New-AzDnsForwardingRulesetVirtualNetworkLink -DnsForwardingRulesetName $dnsForwardingRuleset.Name -ResourceGroupName myresourcegroup -VirtualNetworkLinkName "vnetlink2" -VirtualNetworkId $vnet2.Id -SubscriptionId <your sub id>

A második virtuális hálózat megerősítése

Ellenőrizze, hogy a második virtuális hálózat létrejött-e.

$virtualNetworkLink2 = Get-AzDnsForwardingRulesetVirtualNetworkLink -DnsForwardingRulesetName $dnsForwardingRuleset.Name -ResourceGroupName myresourcegroup 
$virtualNetworkLink2.ToJsonString()

Továbbítási szabályok létrehozása

Hozzon létre egy továbbítási szabályt egy szabálykészlethez egy vagy több cél DNS-kiszolgálóhoz. A teljes tartománynevet (FQDN) záró ponttal kell megadnia. A New-AzDnsResolverTargetDnsServerObject parancsmag az alapértelmezett portot 53-ra állítja, de egyedi portot is megadhat.

$targetDNS1 = New-AzDnsResolverTargetDnsServerObject -IPAddress 192.168.1.2 -Port 53 
$targetDNS2 = New-AzDnsResolverTargetDnsServerObject -IPAddress 192.168.1.3 -Port 53
$targetDNS3 = New-AzDnsResolverTargetDnsServerObject -IPAddress 10.0.0.4 -Port 53
$targetDNS4 = New-AzDnsResolverTargetDnsServerObject -IPAddress 10.5.5.5 -Port 53
$forwardingrule = New-AzDnsForwardingRulesetForwardingRule -ResourceGroupName myresourcegroup -DnsForwardingRulesetName myruleset -Name "Internal" -DomainName "internal.contoso.com." -ForwardingRuleState "Enabled" -TargetDnsServer @($targetDNS1,$targetDNS2)
$forwardingrule = New-AzDnsForwardingRulesetForwardingRule -ResourceGroupName myresourcegroup -DnsForwardingRulesetName myruleset -Name "AzurePrivate" -DomainName "azure.contoso.com" -ForwardingRuleState "Enabled" -TargetDnsServer $targetDNS3
$forwardingrule = New-AzDnsForwardingRulesetForwardingRule -ResourceGroupName myresourcegroup -DnsForwardingRulesetName myruleset -Name "Wildcard" -DomainName "." -ForwardingRuleState "Enabled" -TargetDnsServer $targetDNS4

Ebben a példában:

  • A 10.0.0.4 a feloldó bejövő végpontja.
  • A 192.168.1.2 és a 192.168.1.3 helyszíni DNS-kiszolgálók.
  • A 10.5.5.5 egy védő DNS-szolgáltatás.

Fontos

Az ebben a rövid útmutatóban bemutatott szabályok példák az adott forgatókönyvekhez használható szabályokra. Az ebben a cikkben ismertetett leválasztási szabályok egyike sem szükséges. Ügyeljen arra, hogy tesztelje a továbbítási szabályokat, és győződjön meg arról, hogy a szabályok nem okoznak DNS-feloldási problémákat.

Ha helyettesítő szabályt tartalmaz a szabálykészletben, győződjön meg arról, hogy a cél DNS-szolgáltatás fel tudja oldani a nyilvános DNS-neveket. Egyes Azure-szolgáltatások függenek a nyilvános névfeloldástól.

A privát feloldó tesztelése

Most már képesnek kell lennie DNS-forgalmat küldeni a DNS-feloldónak, és feloldani a rekordokat a továbbítási szabálykészletek alapján, beleértve a következőket:

  • Az Azure DNS privát zónái ahhoz a virtuális hálózathoz kapcsolódnak, ahol a feloldó üzembe van helyezve.
  • DNS-zónák a nyilvános internetes DNS-névtérben.
  • saját DNS helyszíni üzemeltetésű zónákat.

DNS-feloldó törlése

A DNS-feloldó törléséhez először a feloldóban létrehozott erőforrás bejövő végpontjait kell törölni. A bejövő végpontok eltávolítása után a szülő DNS-feloldó törölhető.

A bejövő végpont törlése

Remove-AzDnsResolverInboundEndpoint -Name myinboundendpoint -DnsResolverName mydnsresolver -ResourceGroupName myresourcegroup 
Remove-AzDnsForwardingRulesetVirtualNetworkLink -DnsForwardingRulesetName $dnsForwardingRuleset.Name -Name vnetlink -ResourceGroupName myresourcegroup

A DNS-továbbítási szabálykészlet törlése

Remove-AzDnsForwardingRuleset -Name $dnsForwardingRuleset.Name -ResourceGroupName myresourcegroup

A kimenő végpont törlése

Remove-AzDnsResolverOutboundEndpoint -DnsResolverName mydnsresolver -ResourceGroupName myresourcegroup -Name myoutboundendpoint

A DNS-feloldó törlése

Remove-AzDnsResolver -Name mydnsresolver -ResourceGroupName myresourcegroup

Következő lépések