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.
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:
- Ü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
- 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)
- 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
- 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.
- 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.
- á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
- 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
- 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
2. ábra: Lab beállítás natív BGP Anycast DNS demo
Anycast DNS bemutató
-
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 -
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=126Ping 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 = 0MSmegjegyzés
ha a ping sikertelen, ellenőrizze azt is, hogy nincsenek tűzfalszabályok, amelyek blokkolnák az ICMP-t.
-
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.51az 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.
-
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 -
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.51szerver.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.51szerver.zóna.tst szöveg =
“DC002”
-
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.
-
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.