Delen via


DNS-doorsturen configureren voor Azure Files met behulp van VM's of Azure DNS Private Resolver

Met Azure Files kunt u privé-eindpunten maken voor de opslagaccounts die uw bestandsshares bevatten. Hoewel dit handig is voor veel verschillende toepassingen, zijn privé-eindpunten vooral handig voor het maken van verbinding met uw Azure-bestandsshares vanuit uw on-premises netwerk met behulp van een VPN- of ExpressRoute-verbinding met behulp van privé-peering.

Als u wilt dat verbindingen met uw opslagaccount via uw netwerktunnel worden uitgevoerd, moet de FQDN (Fully Qualified Domain Name) van uw opslagaccount worden omgezet in het privé-IP-adres van uw privé-eindpunt. Hiervoor moet u het achtervoegsel van het opslageindpunt (core.windows.net voor openbare cloudregio's) doorsturen naar de privé-DNS-service van Azure die toegankelijk is vanuit uw virtuele netwerk. In deze handleiding ziet u hoe u DNS-doorsturen instelt en configureert om het IP-adres van het privé-eindpunt van uw opslagaccount correct op te lossen.

We raden u ten zeerste aan planning voor een Azure Files-implementatie en Azure Files-netwerkoverwegingen te lezen voordat u de stappen in dit artikel uitvoert.

Van toepassing op

Bestands sharetype SMB NFS
Standaardbestandsshares (GPv2), LRS/ZRS Ja Nee
Standaardbestandsshares (GPv2), GRS/GZRS Ja Nee
Premium bestandsshares (FileStorage), LRS/ZRS Ja Ja

Overzicht

Azure Files biedt de volgende typen eindpunten voor toegang tot Azure-bestandsshares:

  • Openbare eindpunten, die een openbaar IP-adres hebben en overal ter wereld toegankelijk zijn.
  • Privé-eindpunten, die zich binnen een virtueel netwerk bevinden en een privé-IP-adres hebben in de adresruimte van het virtuele netwerk.
  • Service-eindpunten, waarmee de toegang tot het openbare eindpunt wordt beperkt tot specifieke virtuele netwerken. U hebt nog steeds toegang tot het opslagaccount via het openbare IP-adres, maar toegang is alleen mogelijk vanaf de locaties die u in uw configuratie opgeeft.

Openbare en privé-eindpunten bestaan in het Azure-opslagaccount. Een opslagaccount is een beheerconstructie die een gedeelde opslaggroep vertegenwoordigt waarin u meerdere bestandsshares kunt implementeren, evenals andere opslagresources, zoals blob-containers of wachtrijen.

Elk opslagaccount heeft een FQDN (Fully Qualified Domain Name). Voor de openbare cloudregio's volgt deze FQDN het patroon storageaccount.file.core.windows.net waarin storageaccount de naam van het opslagaccount is. Wanneer u aanvragen indient op basis van deze naam, zoals het koppelen van de share op uw werkstation, voert uw besturingssysteem een DNS-zoekopdracht uit om de volledig gekwalificeerde domeinnaam om te zetten in een IP-adres.

Wordt standaard storageaccount.file.core.windows.net omgezet in het IP-adres van het openbare eindpunt. Het openbare eindpunt voor een opslagaccount wordt gehost op een Azure-opslagcluster dat als host fungeert voor vele openbare eindpunten van andere opslagaccounts. Wanneer u een privé-eindpunt maakt, wordt een privé-DNS-zone gekoppeld aan het virtuele netwerk waaraan het is toegevoegd, met een CNAME-recordtoewijzing storageaccount.file.core.windows.net aan een A-recordvermelding voor het privé-IP-adres van het privé-eindpunt van uw opslagaccount. Hiermee kunt u FQDN in het virtuele netwerk gebruiken storageaccount.file.core.windows.net en deze laten oplossen naar het IP-adres van het privé-eindpunt.

Omdat het uiteindelijke doel is om toegang te krijgen tot de Azure-bestandsshares die worden gehost in het opslagaccount van on-premises met behulp van een netwerktunnel zoals een VPN- of ExpressRoute-verbinding, moet u uw on-premises DNS-servers configureren om aanvragen door te sturen naar de Azure Files-service naar de privé-DNS-service van Azure.

U kunt DNS-doorsturen op twee manieren configureren:

  • Gebruik VM's voor DNS-servers: stel voorwaardelijk doorsturen van *.core.windows.net (of het juiste achtervoegsel van het opslageindpunt voor de amerikaanse overheid, Duitsland of china) in op een virtuele DNS-servermachine die wordt gehost in uw virtuele Azure-netwerk. Deze DNS-server stuurt de aanvraag vervolgens recursief door naar de privé-DNS-service van Azure, waarmee de FQDN van het opslagaccount wordt omgezet naar het juiste privé-IP-adres. Dit is een eenmalige stap voor alle Azure-bestandsshares die worden gehost in uw virtuele netwerk.

  • Azure DNS Private Resolver gebruiken: als u geen DNS-server op basis van een VIRTUELE machine wilt implementeren, kunt u dezelfde taak uitvoeren met behulp van azure DNS Private Resolver.

Naast Azure Files worden DNS-naamomzettingsaanvragen voor andere Azure-opslagservices (Azure Blob Storage, Azure Table Storage, Azure Queue Storage, enzovoort) doorgestuurd naar de privé-DNS-service van Azure. U kunt desgewenst extra eindpunten toevoegen voor andere Azure-services.

Vereisten

Voordat u DNS-doorsturen naar Azure Files kunt instellen, hebt u het volgende nodig:

DNS-doorsturen configureren met behulp van VM's

Als u al DNS-servers in uw virtuele Azure-netwerk hebt of als u liever uw eigen DNS-server-VM's implementeert op basis van de methodologie die uw organisatie gebruikt, kunt u DNS configureren met de ingebouwde PowerShell-cmdlets voor DNS-servers.

Diagram met de netwerktopologie voor het configureren van D N S Forwarding met behulp van virtuele machines in Azure.

Belangrijk

In deze handleiding wordt ervan uitgegaan dat u de DNS-server in Windows Server gebruikt in uw on-premises omgeving. Alle stappen die hier worden beschreven, zijn mogelijk met een DNS-server, niet alleen de Windows DNS-server.

Maak op uw on-premises DNS-servers een voorwaardelijke doorstuurserver met behulp van Add-DnsServerConditionalForwarderZone. Deze voorwaardelijke doorstuurserver moet worden geïmplementeerd op al uw on-premises DNS-servers om effectief verkeer door te sturen naar Azure. Vergeet niet om de <azure-dns-server-ip> vermeldingen te vervangen door de juiste IP-adressen voor uw omgeving.

$vnetDnsServers = "<azure-dns-server-ip>", "<azure-dns-server-ip>"

$storageAccountEndpoint = Get-AzContext | `
    Select-Object -ExpandProperty Environment | `
    Select-Object -ExpandProperty StorageEndpointSuffix

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers $vnetDnsServers

Op de DNS-servers in uw virtuele Azure-netwerk moet u ook een doorstuurserver instellen, zodat aanvragen voor de DNS-zone van het opslagaccount worden doorgestuurd naar de privé-DNS-service van Azure, die wordt fronted door het gereserveerde IP-adres 168.63.129.16. (Vergeet niet om de opdrachten in een andere PowerShell-sessie uit te $storageAccountEndpoint voeren.)

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers "168.63.129.16"

DNS-doorsturen configureren met azure DNS Private Resolver

Als u liever geen VM's voor DNS-servers implementeert, kunt u dezelfde taak uitvoeren met behulp van privé-resolver van Azure DNS. Zie Een privé-resolver voor Azure DNS maken met behulp van Azure Portal.

Diagram van de netwerktopologie voor het configureren van D N S Forwarding met behulp van azure D N S Private Resolver.

Er is geen verschil in hoe u uw on-premises DNS-servers configureert, behalve dat in plaats van naar de IP-adressen van de DNS-servers in Azure te verwijzen, u verwijst naar het ip-adres van het binnenkomende eindpunt van de resolver. Voor de resolver is geen configuratie vereist, omdat query's standaard worden doorgestuurd naar de privé-DNS-server van Azure. Als een privé-DNS-zone is gekoppeld aan het VNet waar de resolver wordt geïmplementeerd, kan de resolver antwoorden met records uit die DNS-zone.

Waarschuwing

Wanneer u doorstuurservers configureert voor de core.windows.net zone, worden alle query's voor dit openbare domein doorgestuurd naar uw Azure DNS-infrastructuur. Dit veroorzaakt een probleem wanneer u probeert toegang te krijgen tot een opslagaccount van een andere tenant die is geconfigureerd met privé-eindpunten, omdat Azure DNS de query beantwoordt voor de openbare naam van het opslagaccount met een CNAME die niet bestaat in uw privé-DNS-zone. Een tijdelijke oplossing voor dit probleem is het maken van een privé-eindpunt tussen tenants in uw omgeving om verbinding te maken met dat opslagaccount.

Voer dit script uit op uw on-premises DNS-servers om DNS-doorsturen te configureren met azure DNS Private Resolver. Vervang door <resolver-ip> het IP-adres van het binnenkomende eindpunt van de resolver.

$privateResolver = "<resolver-ip>"

$storageAccountEndpoint = Get-AzContext | `
    Select-Object -ExpandProperty Environment | `
    Select-Object -ExpandProperty StorageEndpointSuffix

Add-DnsServerConditionalForwarderZone `
        -Name $storageAccountEndpoint `
        -MasterServers $privateResolver

DNS-doorstuurservers bevestigen

Voordat u gaat testen of de DNS-doorstuurservers zijn toegepast, raden we u aan om de DNS-cache op uw lokale werkstation te wissen met behulp van Clear-DnsClientCache. Als u wilt testen of u de FQDN-naam van uw opslagaccount kunt oplossen, gebruikt Resolve-DnsName of nslookup.

# Replace storageaccount.file.core.windows.net with the appropriate FQDN for your storage account.
# Note that the proper suffix (core.windows.net) depends on the cloud you're deployed in.
Resolve-DnsName -Name storageaccount.file.core.windows.net

Als de naamomzetting is geslaagd, ziet u dat het opgeloste IP-adres overeenkomt met het IP-adres van uw opslagaccount.

Name                              Type   TTL   Section    NameHost
----                              ----   ---   -------    --------
storageaccount.file.core.windows. CNAME  29    Answer     csostoracct.privatelink.file.core.windows.net
net

Name       : storageaccount.privatelink.file.core.windows.net
QueryType  : A
TTL        : 1769
Section    : Answer
IP4Address : 192.168.0.4

Als u een SMB-bestandsshare aan het koppelen bent, kunt u ook de Test-NetConnection opdracht gebruiken om te bevestigen dat een TCP-verbinding kan worden gemaakt met uw opslagaccount.

Test-NetConnection -ComputerName storageaccount.file.core.windows.net -CommonTCPPort SMB

Zie ook