Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel leest u hoe u de eigenschap ResolutionPolicy instelt in Azure Privé-DNS om terugval naar internetrecursie in te schakelen wanneer een gezaghebbend NXDOMAIN-antwoord wordt ontvangen voor een Private Link-zone. NXDOMAIN wordt ook wel een negatief antwoord genoemd. Wanneer een DNS-resolver een negatief antwoord ontvangt (of in de cache heeft opgeslagen), wordt er geen DNS-antwoord naar de DNS-client verzonden en mislukt de query.
Probleem
Privé-DNS query's voor Scenario's voor Azure Private Link en netwerkisolatie in verschillende tenants en resourcegroepen hebben unieke naamomzettingspaden. Dit kan van invloed zijn op de mogelijkheid om resources met Private Link te bereiken buiten het beheer van een tenant. Er bestaan tijdelijke oplossingen op basis van vm's om dit probleem op te lossen, maar deze oplossingen vergroten de operationele complexiteit en zijn gekoppeld aan beveiligingsrisico's en hogere kosten.
Oplossing
De eigenschap ResolutionPolicy in Azure Privé-DNS is een volledig beheerde systeemeigen oplossing. Met deze eigenschap kunt u openbare recursie via de recursieve resolver-vloot van Azure inschakelen wanneer een gezaghebbend NXDOMAIN-antwoord wordt ontvangen voor een privékoppelingszone en het privéadres niet kan worden omgezet. Oplossingsbeleid is ingeschakeld op het niveau van de koppeling van het virtuele netwerk met de instelling NxDomainRedirect . In Azure Portal wordt NxDomainRedirect ingeschakeld door terugval naar internet inschakelen te selecteren in de configuratie van virtuele netwerkkoppelingen.
Beleidsdefinitie
De eigenschap ResolutionPolicy is beschikbaar in API-versie 2024-06-01 of hoger. In het volgende voorbeeld is resolutionPolicy ingesteld op NxDomainRedirect op resourceniveau virtualNetworkLinks :
{
"id": "'string'",
"name": '"string'",
"type": "Microsoft.Network/privateDnsZones/virtualNetworkLinks",
"location": "global",
"properties": {
"provisioningState": "Succeeded",
"registrationEnabled": bool,
"resolutionPolicy": "NxDomainRedirect",
"virtualNetwork": {
"id": "'string'"
}
}
}
Deze instelling is beschikbaar in Azure Portal op: Privé-DNS zones>Virtual Network Links>Enable fallback to internet.
Hoe het werkt
Een NXDOMAIN-antwoord (RCODE3) betekent dat de door (Private Link) opgevraagde domeinnaam niet bestaat. Dit negatieve antwoord voorkomt meestal dat resolvers de query opnieuw proberen totdat het negatieve antwoord in de cache verloopt.
Wanneer het nxdomainRedirect-oplossingsbeleid is ingeschakeld op een koppeling naar een virtueel netwerk, probeert de recursieve resolver van Azure de query opnieuw uit te voeren. De resolver gebruikt het openbare eindpunt QNAME als het querylabel telkens wanneer een NXDOMAIN-antwoord wordt ontvangen van PrivateEdge voor dat bereik van de privézone.
Deze wijziging kan worden gezien in de CNAME-ketenresolutie.
C:\>nslookup remoteprivateendpoint.blob.core.windows.net
Server: UnKnown
Address: 168.63.129.16
Non-authoritative answer:
Name: blob.mwh20prdstr02e.store.core.windows.net
Address: 203.0.113.33
Aliases: remoteprivateendpoint.blob.core.windows.net
remoteprivateendpoint.privatelink.blob.core.windows.net
Beperkingen
- Dit beleid is alleen beschikbaar voor Privé-DNS zones die zijn gekoppeld aan Private Link-resources.
- De parameter ResolutionPolicy accepteert alleen Default of NxDomainRedirect als mogelijke waarden.
Terugval naar internetomzetting demonstreren
In het volgende voorbeeld ziet u hoe u terugval naar internetresolutie inschakelt voor een private link-zone (bijvoorbeeld: privatelink.blob.core.windows.net).
Vereisten
- Ten minste twee resourcegroepen: elk met een virtueel netwerk en een privé-eindpunt.
- De resourcegroepen kunnen zich in verschillende regio's of in dezelfde regio bevinden.
- In dit voorbeeld worden opslagaccounts gebruikt met privé-eindpunten, maar andere PaaS-services kunnen worden gekoppeld.
- Ten minste één virtuele machine in een van de virtuele netwerken is vereist om DNS-query's uit te voeren.
- Het virtuele netwerk waarin de virtuele machine zich bevindt, moet worden gekoppeld aan een van de privékoppelingszones.
In deze handleiding wordt ervan uitgegaan dat u de vereiste resources hebt ingericht voordat u doorgaat. Zie Privé-eindpunten van Azure gebruiken voor meer informatie.
Privé-DNS zones controleren
Zoek en selecteer Privé-DNS zones op de startpagina van Azure Portal.
Controleer de lijst met namen en controleer of ten minste twee privé-DNS-zones dezelfde naam hebben (privatelink.blob.core.windows.net). Zie het volgende voorbeeld:
Selecteer de privékoppelingszones en selecteer recordsets.
Controleer of records voor opslagaccounts aanwezig zijn in elke privézone.
Notitie
Opslagaccounts die zich in dezelfde resourcegroep bevinden, hebben resourcerecords in dezelfde Privé-DNS zone.
Opslagaccounts die zich in verschillende resourcegroepen bevinden, hebben resourcerecords in verschillende (identieke naam) Privé-DNS zones.
Dns-omzettingsfout demonstreren
Noteer de FQDN (Fully Qualified Domain Name) en het IP-adres voor een opslagaccount in de eerste private link-zone die wordt weergegeven (bijvoorbeeld:
myeaststorageacct1.privatelink.blob.core.windows.net
,10.40.40.5
).Noteer ook de FQDN en het IP-adres voor een andere Privé-DNS zone met dezelfde naam (bijvoorbeeld:
myeaststorageacct2.privatelink.blob.core.windows.net
,10.10.10.5
).- Ten minste één van deze Privé-DNS zones moet een virtuele netwerkkoppeling hebben naar het VNet, waar u query's vanaf een virtuele machine kunt uitvoeren.
Open een opdrachtprompt op uw virtuele Azure-machine en probeer de FQDN van beide opslagaccounts op te lossen. Zie het volgende voorbeeld:
C:\>dig myeaststorageacct1.privatelink.blob.core.windows.net +short 10.40.40.5 C:\>dig myeaststorageacct2.privatelink.blob.core.windows.net +short
U ziet dat het ene opslagaccount wordt omgezet en het andere opslagaccount niet wordt omgezet.
Terugval naar internetomzetting configureren
Selecteer opnieuw elk van de privé-DNS-zones, selecteer Virtuele netwerkkoppelingen en selecteer vervolgens het potloodpictogram 'bewerken'. Zie het volgende voorbeeld:
Selecteer onder aan de pagina de optie Terugval naar internet inschakelen en selecteer Opslaan.
Herhaal deze stappen voor elke private link-zone en laat de tijd voor de koppelingen van het virtuele netwerk bijwerken.
Probeer de FQDN-naam van de opslagaccounts opnieuw op te lossen. Zie het volgende voorbeeld:
C:\>dig myeaststorageacct1.privatelink.blob.core.windows.net +short 10.40.40.5 C:\>dig myeaststorageacct2.privatelink.blob.core.windows.net +short blob.bl5prdstr19c.store.core.windows.net. 203.0.113.161
Het opslagaccount dat niet is opgelost, wordt nu via internet omgezet, zodat u deze private link-resource kunt bereiken.
Koppelingen naar virtuele netwerken waarvoor terugval is ingeschakeld
U kunt Azure Resource Graph Explorer of de Azure CLI gebruiken om query's uit te voeren op terugvalkoppelingen voor virtuele netwerken. Zie de volgende voorbeelden:
resources
| where tostring(properties.resolutionPolicy) contains 'NxDomainRedirect'
| extend privateDnsZone = extract("/privateDnsZones/([^/]+)/", 1, id)
| project privateDnsZone, resourceGroup, properties.resolutionPolicy
Input:
az graph query -q "resources
| where tostring(properties.resolutionPolicy) contains 'NxDomainRedirect'
| extend privateDnsZone = extract('/privateDnsZones/([^/]+)/', 1, id)
| project privateDnsZone, resourceGroup, properties.resolutionPolicy"
Uitvoer:
{
"count": 4,
"data": [
{
"privateDnsZone": "privatelink.blob.core.windows.net",
"properties_resolutionPolicy": "NxDomainRedirect",
"resourceGroup": "myresourcegroup"
},
{
"privateDnsZone": "privatelink.blob.core.windows.net",
"properties_resolutionPolicy": "NxDomainRedirect",
"resourceGroup": "mywestrg2"
},
{
"privateDnsZone": "privatelink.blob.core.windows.net",
"properties_resolutionPolicy": "NxDomainRedirect",
"resourceGroup": "mywestrg"
},
{
"privateDnsZone": "privatelink.blob.core.windows.net",
"properties_resolutionPolicy": "NxDomainRedirect",
"resourceGroup": "myeastrg"
}
],
"skip_token": null,
"total_records": 4
}
Als u de resolutiebeleidswaarden voor alle zones met private link wilt weergeven, kunt u de volgende Azure Resource Graph Explorer- en Azure CLI-query's gebruiken:
resources
| where tostring(properties) contains 'resolutionPolicy'
| extend privateDnsZone = extract("/privateDnsZones/([^/]+)/", 1, id)
| project privateDnsZone, resourceGroup, properties.resolutionPolicy
Input:
az graph query -q "resources
| where tostring(properties) contains 'resolutionPolicy'
| extend privateDnsZone = extract('/privateDnsZones/([^/]+)/', 1, id)
| project privateDnsZone, resourceGroup, properties.resolutionPolicy"
In de volgende Azure CLI-voorbeelduitvoer is een van de zones waarvoor Private Link is ingeschakeld ingesteld op Standaard (terugval uitgeschakeld) om te laten zien hoe dit wordt weergegeven.
Uitvoer:
{
"count": 4,
"data": [
{
"privateDnsZone": "privatelink.blob.core.windows.net",
"properties_resolutionPolicy": "Default",
"resourceGroup": "mywestrg"
},
{
"privateDnsZone": "privatelink.blob.core.windows.net",
"properties_resolutionPolicy": "NxDomainRedirect",
"resourceGroup": "myresourcegroup"
},
{
"privateDnsZone": "privatelink.blob.core.windows.net",
"properties_resolutionPolicy": "NxDomainRedirect",
"resourceGroup": "mywestrg2"
},
{
"privateDnsZone": "privatelink.blob.core.windows.net",
"properties_resolutionPolicy": "NxDomainRedirect",
"resourceGroup": "myeastrg"
}
],
"skip_token": null,
"total_records": 4
}
Volgende stappen
- Meer informatie over het beheren van recordsets en records in uw DNS-zone.