Delen via


DNS-beleid gebruiken voor Geo-Location gebaseerd verkeerbeheer met primaire servers

U kunt dit onderwerp gebruiken voor informatie over het configureren van DNS-beleid zodat primaire DNS-servers kunnen reageren op DNS-clientquery's op basis van de geografische locatie van zowel de client als de resource waarmee de client verbinding probeert te maken, zodat de client het IP-adres van de dichtstbijzijnde resource heeft.

Important

In dit scenario ziet u hoe u DNS-beleid implementeert voor verkeerbeheer op basis van geografische locaties wanneer u alleen primaire DNS-servers gebruikt. U kunt ook verkeerbeheer op basis van geografische locaties uitvoeren wanneer u zowel primaire als secundaire DNS-servers hebt. Als u een primaire secundaire implementatie hebt, voert u eerst de stappen in dit onderwerp uit en voert u vervolgens de stappen uit die worden beschreven in het onderwerp DNS-beleid gebruiken voor Geo-Location gebaseerd verkeerbeheer met Primary-Secondary-implementaties.

Met nieuw DNS-beleid kunt u een DNS-beleid maken waarmee de DNS-server kan reageren op een clientquery waarin wordt gevraagd naar het IP-adres van een webserver. Exemplaren van de webserver bevinden zich mogelijk in verschillende datacenters op verschillende fysieke locaties. DNS kan de client- en webserverlocaties beoordelen en vervolgens reageren op de clientaanvraag door de client een IP-adres van de webserver op te geven voor een webserver die zich fysiek dichter bij de client bevindt.

U kunt de volgende DNS-beleidsparameters gebruiken om de DNS-serverreacties op query's van DNS-clients te beheren.

  • Client Subnet. Naam van een vooraf gedefinieerd clientsubnet. Wordt gebruikt om het subnet te controleren waaruit de query is verzonden.
  • Transport Protocol. Transportprotocol dat in de query wordt gebruikt. Possible entries are UDP and TCP.
  • Internet Protocol. Het netwerkprotocol dat in de query wordt gebruikt. Possible entries are IPv4 and IPv6.
  • IP-adres van serverinterface. IP-adres van de netwerkinterface van de DNS-server die de DNS-aanvraag heeft ontvangen.
  • FQDN. De FQDN (Fully Qualified Domain Name) van de record in de query, met de mogelijkheid om een jokerteken te gebruiken.
  • Query Type. Type record dat wordt opgevraagd (A, SRV, TXT, enzovoort).
  • Tijdstip van de dag. Tijdstip waarop de query wordt ontvangen.

U kunt de volgende criteria combineren met een logische operator (AND/OR) om beleidsexpressies te formuleren. Wanneer deze expressies overeenkomen, wordt verwacht dat het beleid een van de volgende acties uitvoert.

  • Ignore. De DNS-server laat de query op de achtergrond vallen.
  • Deny. De DNS-server beantwoordt op die query met een antwoord met een foutmelding.
  • Allow. De DNS-server antwoordt met een verkeersbeheerantwoord.

Voorbeeld van verkeerbeheer op basis van Geo-Location

Hieronder volgt een voorbeeld van hoe u DNS-beleid kunt gebruiken om verkeersomleiding te bereiken op basis van de fysieke locatie van de client die een DNS-query uitvoert.

In dit voorbeeld worden twee fictieve bedrijven gebruikt: Contoso Cloud Services, die web- en domeinhostingoplossingen biedt; en Woodgrove Food Services, die voedselleveringsdiensten biedt in meerdere steden over de hele wereld, en die een website heeft met de naam woodgrove.com.

Contoso Cloud Services heeft twee datacenters, één in de VS en een andere in Europa. Het Europese datacenter fungeert als host voor een portal voor het bestellen van voedsel voor woodgrove.com.

Om ervoor te zorgen dat woodgrove.com klanten een responsieve ervaring krijgen van hun website, wil Woodgrove dat Europese klanten worden omgeleid naar het Europese datacenter en Amerikaanse clients die zijn omgeleid naar het Amerikaanse datacenter. Klanten die zich elders ter wereld bevinden, kunnen worden omgeleid naar een van de datacenters.

In de volgende afbeelding ziet u dit scenario.

 Voorbeeld vanGeo-Location gebaseerd verkeerbeheer

De werking van het DNS-naamomzettingsproces

During the name resolution process, the user tries to connect to www.woodgrove.com. Dit resulteert in een DNS-naamomzettingsaanvraag die wordt verzonden naar de DNS-server die is geconfigureerd in de eigenschappen van de netwerkverbinding op de computer van de gebruiker. Dit is doorgaans de DNS-server die wordt geleverd door de lokale internetprovider die fungeert als een caching-resolver en wordt aangeduid als de LDNS.

Als de DNS-naam niet aanwezig is in de lokale cache van LDNS, stuurt de LDNS-server de query door naar de DNS-server die gezaghebbend is voor woodgrove.com. The authoritative DNS server responds with the requested record (www.woodgrove.com) to the LDNS server, which in turn caches the record locally before sending it to the user's computer.

Omdat Contoso Cloud Services GEBRUIKMAAKT van DNS-serverbeleid, wordt de gezaghebbende DNS-server die als host fungeert voor contoso.com geconfigureerd voor het retourneren van op geografische locaties gebaseerde verkeer beheerde antwoorden. Dit resulteert in de richting van Europese clients naar het Europese datacenter en de richting van American Clients naar het Amerikaanse datacenter, zoals weergegeven in de afbeelding.

In dit scenario ziet de gezaghebbende DNS-server meestal de aanvraag voor naamomzetting die afkomstig is van de LDNS-server en, zeer zelden, van de computer van de gebruiker. Daarom is het bron-IP-adres in de naamomzettingsaanvraag, zoals wordt gezien door de gezaghebbende DNS-server, die van de LDNS-server en niet die van de computer van de gebruiker. Als u echter het IP-adres van de LDNS-server gebruikt wanneer u queryreacties op basis van geolocatie configureert, biedt een eerlijke schatting van de geografische locatie van de gebruiker, omdat de gebruiker een query uitvoert op de DNS-server van zijn lokale internetprovider.

Note

DNS-beleid maakt gebruik van het IP-adres van de afzender in het UDP/TCP-pakket dat de DNS-query bevat. Als de query de primaire server bereikt via meerdere resolver-/LDNS-hops, wordt alleen rekening gehouden met het IP-adres van de laatste resolver van waaruit de DNS-server de query ontvangt.

DNS-beleid configureren voor op Geo-Location gebaseerde queryantwoorden

Als u DNS-beleid wilt configureren voor queryantwoorden op basis van geografische locatie, moet u de volgende stappen uitvoeren.

  1. De DNS-clientsubnetten maken
  2. De reikwijdtes van de zone creëren
  3. Records toevoegen aan de zonescopes
  4. Het beleid maken

Note

U moet deze stappen uitvoeren op de DNS-server die gezaghebbend is voor de zone die u wilt configureren. Membership in DnsAdmins, or equivalent, is required to perform the following procedures.

De volgende secties bevatten gedetailleerde configuratie-instructies.

Important

De volgende secties bevatten voorbeelden van Windows PowerShell-opdrachten die voorbeeldwaarden voor veel parameters bevatten. Zorg ervoor dat u voorbeeldwaarden in deze opdrachten vervangt door waarden die geschikt zijn voor uw implementatie voordat u deze opdrachten uitvoert.

De DNS-clientsubnetten maken

De eerste stap is het identificeren van de subnetten of IP-adresruimte van de regio's waarvoor u verkeer wilt omleiden. Als u bijvoorbeeld verkeer wilt omleiden voor de Vs en Europa, moet u de subnetten of IP-adresruimten van deze regio's identificeren.

U kunt deze informatie verkrijgen via Geo-IP kaarten. Op basis van deze Geo-IP distributies moet u de 'DNS-clientsubnetten' maken. Een DNS-clientsubnet is een logische groepering van IPv4- of IPv6-subnetten waaruit query's worden verzonden naar een DNS-server.

U kunt de volgende Windows PowerShell-opdrachten gebruiken om DNS-clientsubnetten te maken.

Add-DnsServerClientSubnet -Name "USSubnet" -IPv4Subnet "192.0.0.0/24"
Add-DnsServerClientSubnet -Name "EuropeSubnet" -IPv4Subnet "141.1.0.0/24"

For more information, see Add-DnsServerClientSubnet.

Zonebereiken maken

Nadat de clientsubnetten zijn geconfigureerd, moet u de zone, waarvan u het verkeer wilt omleiden, partitioneren in twee verschillende zonescopes, één scope voor elk van de DNS-client-subnetten die u hebt geconfigureerd.

For example, if you want to redirect traffic for the DNS name www.woodgrove.com, you must create two different zone scopes in the woodgrove.com zone, one for the U.S. and one for Europe.

Een zonebereik is een uniek exemplaar van de zone. Een DNS-zone kan meerdere zonebereiken hebben, waarbij elk zonebereik een eigen set DNS-records bevat. Dezelfde record kan aanwezig zijn in meerdere scopen, met dezelfde of verschillende IP-adressen.

Note

Standaard bestaat er een zonebereik op de DNS-zones. Dit zonebereik heeft dezelfde naam als de zone en verouderde DNS-bewerkingen werken voor dit bereik.

U kunt de volgende Windows PowerShell-opdrachten gebruiken om zonebereiken te maken.

Add-DnsServerZoneScope -ZoneName "woodgrove.com" -Name "USZoneScope"
Add-DnsServerZoneScope -ZoneName "woodgrove.com" -Name "EuropeZoneScope"

For more information, see Add-DnsServerZoneScope.

Records toevoegen aan de zonescope

Nu moet u de records die de webserverhost vertegenwoordigen, toevoegen aan de twee zonebereiken.

For example, USZoneScope and EuropeZoneScope. In USZoneScope, you can add the record www.woodgrove.com with the IP address 192.0.0.1, which is located in a U.S. datacenter; and in EuropeZoneScope you can add the same record (www.woodgrove.com) with the IP address 141.1.0.1 in the European datacenter.

U kunt de volgende Windows PowerShell-opdrachten gebruiken om records toe te voegen aan de zonebereiken.

Add-DnsServerResourceRecord -ZoneName "woodgrove.com" -A -Name "www" -IPv4Address "192.0.0.1" -ZoneScope "USZoneScope"
Add-DnsServerResourceRecord -ZoneName "woodgrove.com" -A -Name "www" -IPv4Address "141.1.0.1" -ZoneScope "EuropeZoneScope"

In dit voorbeeld moet u ook de volgende Windows PowerShell-opdrachten gebruiken om records toe te voegen aan het standaardzonebereik om ervoor te zorgen dat de rest van de wereld nog steeds toegang heeft tot de woodgrove.com webserver vanuit een van de twee datacenters.

Add-DnsServerResourceRecord -ZoneName "woodgrove.com" -A -Name "www" -IPv4Address "192.0.0.1"
Add-DnsServerResourceRecord -ZoneName "woodgrove.com" -A -Name "www" -IPv4Address "141.1.0.1"

The ZoneScope parameter is not included when you add a record in the default scope. Dit is hetzelfde als het toevoegen van records aan een standaard-DNS-zone.

For more information, see Add-DnsServerResourceRecord.

Het beleid maken

Nadat u de subnetten, de partities (zonebereiken) en u records hebt toegevoegd, moet u beleidsregels maken waarmee de subnetten en partities worden verbonden, zodat wanneer een query afkomstig is van een bron in een van de DNS-clientsubnetten, het queryantwoord wordt geretourneerd uit het juiste bereik van de zone. Er zijn geen beleidsregels vereist voor het toewijzen van het standaardzonebereik.

U kunt de volgende Windows PowerShell-opdrachten gebruiken om een DNS-beleid te maken waarmee de DNS-clientsubnetten en de zonebereiken worden gekoppeld.

Add-DnsServerQueryResolutionPolicy -Name "USPolicy" -Action ALLOW -ClientSubnet "eq,USSubnet" -ZoneScope "USZoneScope,1" -ZoneName "woodgrove.com"
Add-DnsServerQueryResolutionPolicy -Name "EuropePolicy" -Action ALLOW -ClientSubnet "eq,EuropeSubnet" -ZoneScope "EuropeZoneScope,1" -ZoneName "woodgrove.com"

For more information, see Add-DnsServerQueryResolutionPolicy.

De DNS-server is nu geconfigureerd met het vereiste DNS-beleid om verkeer om te leiden op basis van geografische locatie.

Wanneer de DNS-server query's voor naamomzetting ontvangt, evalueert de DNS-server de velden in de DNS-aanvraag op basis van het geconfigureerde DNS-beleid. Als het bron-IP-adres in de naamomzettingsaanvraag overeenkomt met een van de beleidsregels, wordt het bijbehorende zonebereik gebruikt om te reageren op de query en wordt de gebruiker omgeleid naar de resource die zich geografisch het dichtst bij de bron bevindt.

U kunt duizenden DNS-beleidsregels maken op basis van uw vereisten voor verkeerbeheer en alle nieuwe beleidsregels worden dynamisch toegepast, zonder de DNS-server opnieuw op te starten voor binnenkomende query's.