Anycast DNS-áttekintés

  • 10/23/2020
  • 7 perc olvasni
    • g
    • e

a következőkre vonatkozik: Windows Server (féléves csatorna), Windows Server 2016, Windows Server 2019

ez a témakör az Anycast DNS működéséről nyújt információt.

mi az Anycast?

az Anycast olyan technológia, amely több útválasztási útvonalat biztosít olyan végpontok csoportjához, amelyek mindegyikéhez ugyanazt az IP-címet rendelik. A csoport minden eszköze ugyanazt a címet hirdeti a hálózaton, és az útválasztási protokollok segítségével választják ki, melyik a legjobb úticél.

az Anycast lehetővé teszi az állapot nélküli szolgáltatások, például a DNS vagy a HTTP méretezését úgy, hogy több csomópontot helyez el ugyanazon IP-cím mögött, és egyenlő költségű többutas (ecmp) útválasztást használ a csomópontok közötti forgalom irányításához. Az Anycast különbözik az unicast-tól, amelyben minden végpontnak saját, külön IP-címe van.

miért használja az Anycast-ot DNS-sel?

az Anycast DNS segítségével engedélyezheti, hogy egy DNS-kiszolgáló vagy kiszolgálócsoport válaszoljon a DNS-lekérdezésekre a DNS-ügyfél földrajzi elhelyezkedése alapján. Ez növelheti a DNS válaszidejét és egyszerűsítheti a DNS kliens beállításait. Az Anycast DNS egy extra redundanciaréteget is biztosít, és segíthet megvédeni a DNS szolgáltatásmegtagadási támadásait.

hogyan működik az Anycast DNS

az Anycast DNS útválasztási protokollok, például Border Gateway Protocol (BGP) használatával működik, hogy DNS-lekérdezéseket küldjön egy előnyben részesített DNS-kiszolgálóra vagy DNS-kiszolgálók csoportjára (például: a terheléselosztó által kezelt DNS-kiszolgálók csoportja). Ez optimalizálhatja a DNS-kommunikációt azáltal, hogy DNS-válaszokat kap egy klienshez legközelebb eső DNS-kiszolgálótól.

az Anycast esetében a több földrajzi helyen létező szerverek mindegyike egyetlen, azonos IP-címet hirdet a helyi átjáróval (útválasztóval). Amikor egy DNS-ügyfél lekérdezést kezdeményez az Anycast-címre, a rendszer kiértékeli a rendelkezésre álló útvonalakat, és elküldi a DNS-lekérdezést a kívánt helyre. Általában ez a legközelebbi hely a hálózati topológia alapján. Lásd a következő példát.

négy különböző helyszínen található DNS-kiszolgáló ugyanazt az Anycast IP-címet jelenti be a hálózatnak

1.ábra: a hálózat különböző helyszínein található négy DNS-kiszolgáló ugyanazt az Anycast IP-címet (fekete nyilak) jelenti be a hálózatnak. A DNS-kliens eszköz kérést küld az Anycast IP-címre. A hálózati eszközök elemzik az elérhető útvonalakat, és elküldik az ügyfél DNS-lekérdezését a legközelebbi helyre (kék nyíl).

az Anycast DNS-t manapság gyakran használják számos globális DNS-szolgáltatás DNS-forgalmának irányítására. Például a gyökér DNS-kiszolgáló rendszere nagymértékben függ az Anycast DNS-től. Az Anycast különféle útválasztási protokollokkal is működik, és kizárólag intraneten használható.

Windows Server natív BGP Anycast demo

az alábbi eljárás bemutatja, hogyan használható a Windows Server natív BGP az Anycast DNS-sel.

követelmények

  • egy fizikai eszköz a Hyper-V szereppel telepítve.
    • Windows Server 2012 R2, Windows 10 vagy újabb.
  • 2 ügyfél virtuális gépek (bármilyen operációs rendszer).
    • ajánlott olyan BIND eszközök telepítése a DNS-hez, mint például a dig.
  • 3 szerver virtuális gépek (Windows Server 2016 vagy Windows Server 2019).
    • ha a Windows PowerShell LoopbackAdapter modul még nincs telepítve a kiszolgáló virtuális gépeire (dc001, DC002), a modul telepítéséhez ideiglenesen Internet-hozzáférés szükséges.

Hyper-V beállítás

konfigurálja a Hyper-V szervert az alábbiak szerint:

  • 2 a privát virtuális kapcsolóhálózatok konfigurálva vannak
    • ál internetes hálózat 131.253.1.0/24
    • ál intranetes hálózat 10.10.10.0/24
  • 2 ügyfél virtuális gépek kapcsolódnak a 131.253.1.0/24 hálózathoz
  • 2 szerver a virtuális gépek a 10.10.10.0/24 hálózathoz kapcsolódnak
  • 1 A szerver kettős otthoni, és mind a 131.253.1.0/24, mind a 10.10.10.0 / 24 hálózathoz csatlakozik.

virtuális gép hálózati konfigurálása

konfigurálja a hálózati beállításokat virtuális gépeken a következő beállításokkal:

  1. Ügyfél1, ügyfél2
  • Ügyfél1: 131.253.1.1
  • Ügyfél2: 131.253.1.2
  • alhálózati maszk: 255.255.255.0
  • DNS: 51.51.51.51
  • átjáró: 131.253.1.254
  1. Gateway (Windows Server)
  • NIC1: 131.253.1.254, alhálózat 255.255.255.0
  • NIC2: 10.10.10.254, alhálózat 255.255.255.0
  • DNS: 51.51.51
  • átjáró: 131.253.1.100 (lehet figyelmen kívül hagyni a demo)
  1. Dc001 (Windows Server)
  • NIC1: 10.10.10.1
  • alhálózat: 255.255.255.0
  • DNS: 10.10.10.1
  • átjáró: 10.10.10.254
  1. Dc002 (Windows Server)
  • NIC1: 10.10.10.2
  • alhálózat 255.255.255.0
  • DNS: 10.10.10.2 *
  • átjáró: 10.10.10.254

*használja a 10.10.10.1-et a DNS-hez kezdetben, amikor végrehajtja a tartománycsatlakozást a DC002-hez, hogy megtalálja az Active Directory tartományt a DC001-en.

DNS konfigurálása

a Kiszolgálókezelő és a DNS-kezelő konzol vagy a Windows PowerShell segítségével telepítse a következő kiszolgálói szerepköröket, és hozzon létre egy statikus DNS-zónát mindkét kiszolgálón.

  1. DC001, DC002
  • az Active Directory tartományi szolgáltatások telepítése és tartományvezérlővé történő előléptetés (opcionális)
  • telepítse a DNS-szerepkört (kötelező)
  • hozzon létre egy zóna nevű statikus zónát (nem AD-integrált).tst mind a DC001, mind a DC002 esetén
    • adja hozzá az egyetlen statikus rekord névkiszolgálót a “TXT”típusú zónába
    • adatok (szöveg) a DC001 = DC001 txt rekordhoz
    • adatok (szöveg) a DC002 = DC002 txt rekordhoz

visszacsatoló adapterek konfigurálása

a visszacsatoló adapterek konfigurálásához adja meg a következő parancsokat a dc001 és DC002 Windows PowerShell-parancssorában.

Megjegyzés

az Install-Module parancshoz Internet-hozzáférés szükséges. Ezt úgy teheti meg, hogy ideiglenesen hozzárendeli a virtuális Gépet egy külső hálózathoz a Hyper-V-ben.

$primary_interface = (Get-NetAdapter |?{$_.Status -eq "Up" -and !$_.Virtual}).Name$loopback_ipv4 = '51.51.51.51'$loopback_ipv4_length = '32'$loopback_name = 'Loopback'Install-Module -Name LoopbackAdapter -MinimumVersion 1.2.0.0 -ForceImport-Module -Name LoopbackAdapterNew-LoopbackAdapter -Name $loopback_name -Force$interface_loopback = Get-NetAdapter -Name $loopback_name$interface_main = Get-NetAdapter -Name $primary_interfaceSet-NetIPInterface -InterfaceIndex $interface_loopback.ifIndex -InterfaceMetric "254" -WeakHostReceive Enabled -WeakHostSend Enabled -DHCP DisabledSet-NetIPInterface -InterfaceIndex $interface_main.ifIndex -WeakHostReceive Enabled -WeakHostSend EnabledSet-NetIPAddress -InterfaceIndex $interface_loopback.ifIndex -SkipAsSource $TrueGet-NetAdapter $loopback_name | Set-DNSClient –RegisterThisConnectionsAddress $FalseNew-NetIPAddress -InterfaceAlias $loopback_name -IPAddress $loopback_ipv4 -PrefixLength $loopback_ipv4_length -AddressFamily ipv4Disable-NetAdapterBinding -Name $loopback_name -ComponentID ms_msclientDisable-NetAdapterBinding -Name $loopback_name -ComponentID ms_pacerDisable-NetAdapterBinding -Name $loopback_name -ComponentID ms_serverDisable-NetAdapterBinding -Name $loopback_name -ComponentID ms_lltdioDisable-NetAdapterBinding -Name $loopback_name -ComponentID ms_rspndr

Virtuálisgép-útválasztási konfiguráció

az Útválasztás konfigurálásához használja a következő Windows PowerShell-parancsokat virtuális gépeken.

  1. átjáró
Install-WindowsFeature RemoteAccess -IncludeManagementToolsInstall-RemoteAccess -VpnType RoutingOnlyAdd-BgpRouter -BgpIdentifier "10.10.10.254" -LocalASN 8075Add-BgpPeer -Name "DC001" -LocalIPAddress 10.10.10.254 -PeerIPAddress 10.10.10.1 -PeerASN 65511 –LocalASN 8075
  1. DC001
Install-WindowsFeature RemoteAccess -IncludeManagementToolsInstall-RemoteAccess -VpnType RoutingOnlyAdd-BgpRouter -BgpIdentifier "10.10.10.1" -LocalASN 65511Add-BgpPeer -Name "Labgw" -LocalIPAddress 10.10.10.1 -PeerIPAddress 10.10.10.254 -PeerASN 8075 –LocalASN 65511Add-BgpCustomRoute -Network 51.51.51.0/24
  1. DC002
Install-WindowsFeature RemoteAccess -IncludeManagementToolsInstall-RemoteAccess -VpnType RoutingOnlyAdd-BgpRouter -BgpIdentifier "10.10.10.2" -LocalASN 65511Add-BgpPeer -Name "Labgw" -LocalIPAddress 10.10.10.2 -PeerIPAddress 10.10.10.254 -PeerASN 8075 –LocalASN 65511Add-BgpCustomRoute -Network 51.51.51.0/24

összefoglaló diagram

 Lab beállítás natív BGP Anycast DNS demo

2. ábra: Lab beállítás natív BGP Anycast DNS demo

Anycast DNS bemutató

  1. ellenőrizze a BGP útválasztást az átjárókiszolgálón

    PS C:> Get-Bgútvonalinformáció

    Úticélhálózatnexthop Tanultfrompeer State LocalPref MED
    —————— ——- ————— —– ——— —
    51.51.51.0/24 10.10.10.1 Dc001 legjobb
    51.51.51.0 / 24 10.10.10.2 Dc002 legjobb

  2. a client1 és client2, ellenőrizze, hogy elérheti 51.51.51.51

    PS C:> ping 51.51.51.51

    pingelés 51.51.51.51 a 32 bájtnyi adat:
    válasz 51.51.51.51: bytes=32 idő<1ms TTL=126
    válasz 51.51.51.51-től: bájt=32 idő<1ms TTL=126
    válasz 51.51.51.51-től: bytes=32 idő<1ms TTL=126
    válasz 51.51.51.51: bytes=32 idő<1ms TTL=126

    Ping statisztikák 51.51.51.51:
    csomagok: küldött = 4, kapott = 4, Elveszett = 0 (0% veszteség),
    hozzávetőleges oda-vissza alkalommal milli-másodperc:
    minimum = 0MS, maximum = 0MS, átlag = 0MS

    megjegyzés

    ha a ping sikertelen, ellenőrizze azt is, hogy nincsenek tűzfalszabályok, amelyek blokkolnák az ICMP-t.

  3. client1 és client2 esetén az nslookup vagy a dig használatával lekérdezheti a TXT rekordot. Mindkét példát az alábbiakban mutatjuk be.

    PS C:> dig szerver.zóna.tst TXT + rövid
    PS C:> nslookup-type=txt szerver.zóna.tst 51.51.51.51

    az egyik kliens “DC001” – et, a másik kliens pedig “DC002” – t jelenít meg, ellenőrizve, hogy az Anycast megfelelően működik-e. Az átjáró kiszolgálóról is lekérdezhet.

  4. ezután tiltsa le az Ethernet adaptert a DC001-en.

    PS C:>(Get-NetAdapter).Name
    Loopback
    Ethernet 2
    PS C:> Disable-NetAdapter “Ethernet 2”
    Confirm
    biztos, hogy végre akarja hajtani ezt a műveletet?
    Disable-NetAdapter ‘Ethernet 2’
    igen igen mindenkinek nem nem mindenkinek felfüggeszti a súgót (alapértelmezett “Y”):
    PS C:> (Get-NetAdapter).Állapot
    fel
    letiltva

  5. erősítse meg, hogy azok a DNS-ügyfelek, amelyek korábban a DC001-től kaptak válaszokat, átálltak a DC002-re.

    PS C:> nslookup-type=txt szerver.zóna.tst 51.51.51.51
    szerver: ismeretlen
    cím: 51.51.51.51

    szerver.zóna.tst text =

    “DC001”
    PS C:> nslookup-type=txt szerver.zóna.tst 51.51.51.51
    szerver: ismeretlen
    cím: 51.51.51.51

    szerver.zóna.tst szöveg =

    “DC002”

  6. ellenőrizze, hogy a BGP munkamenet nem működik-e a DC001-en a Get-BgpStatistics használatával az átjárókiszolgálón.

  7. engedélyezze újra az Ethernet adaptert a DC001-en, és erősítse meg, hogy a BGP munkamenet helyreállt, és az ügyfelek ismét DNS-válaszokat kapnak a DC001-től.

Megjegyzés:

ha nem használ terheléselosztót, az egyes ügyfelek ugyanazt a háttér-DNS-kiszolgálót fogják használni, ha rendelkezésre áll. Ez következetes BGP elérési utat hoz létre az ügyfél számára. További információért lásd a 4.4 pontot.3 RFC4786: egyenlő költségű utak.

Gyakran Ismételt Kérdések

k: az Anycast DNS jó megoldás helyszíni DNS környezetben való használatra?
V: az Anycast DNS zökkenőmentesen működik egy helyszíni DNS-szolgáltatással. Az Anycast azonban nem szükséges a DNS-szolgáltatás skálázásához.

k: milyen hatással van az Anycast DNS bevezetése olyan környezetben, ahol nagyszámú (pl. >50) tartományvezérlő található?
A: nincs közvetlen hatása a funkcionalitásra. Ha terheléselosztót használ, akkor nincs szükség további konfigurációra a tartományvezérlőkön.

Q: Az Anycast DNS-konfigurációt támogatja a Microsoft ügyfélszolgálata?
V: ha nem Microsoft terheléselosztót használ a DNS-lekérdezések továbbításához, a Microsoft támogatni fogja a DNS-kiszolgáló szolgáltatással kapcsolatos problémákat. A DNS-továbbítással kapcsolatos problémákkal kapcsolatban forduljon a terheléselosztó gyártójához.

K: Mi a legjobb gyakorlat a nagyszámú (pl. >50) tartományvezérlővel rendelkező Anycast DNS esetében?
A: A legjobb gyakorlat a terheléselosztó használata minden földrajzi helyen. A terheléselosztókat általában egy külső gyártó biztosítja.

Q: Az Anycast DNS és az Azure DNS hasonló funkciókkal rendelkezik?
V: Az Azure DNS Anycast-ot használ. Az Anycast Azure DNS-sel való használatához konfigurálja a terheléselosztót úgy, hogy továbbítsa a kéréseket az Azure DNS-kiszolgálóra.