Jaka jest różnica między Anycast a GeoDNS / GeoIP wrt HA?

17

Oparty na Wikipedii opis Anycast , obejmuje zarówno dystrybucję mapowania nazwy domeny na wiele adresów IP na wielu serwerach DNS, jak również odpowiadanie klientom, którzy mają najbliższy geograficznie (lub najszybszy) serwer.

W kontekście globalnie dystrybuowanej, wysoce dostępnej witryny, takiej jak google.com (lub dowolna usługa CDN z wieloma lokalizacjami na całym świecie), brzmi to tak, jakby dwie kluczowe funkcje były potrzebne.

Usługi DNS, takie jak Amazon Route53, EasyDNS i DNSMadeEasy, reklamują się jako sieci z obsługą Anycast.

Dlatego zakładam, że każda z tych usług DNS w przejrzysty sposób oferuje mi te dwie zabójcze funkcje: mapowanie wielu adresów IP do domeny ORAZ kierowanie klientów do najbliższego węzła.

Wydaje się jednak , że każda z tych usług oddziela te dwie funkcje, odnosząc się do drugiej (klienty kierujące do najbliższego węzła) jako „GeoDNS”, „GeoIP” lub „Global Traffic Director” i pobiera dodatkową opłatę za usługę.

Jeśli główny najemca systemu obsługującego Anycast ma to już zrobić, dlaczego ta funkcja jest zarezerwowana jako dodatkowa funkcja? Czym jest ta funkcja „GeoDNS”, czego nie robi standardowa usługa DNS Anycast (zgodnie z definicją Anycast z Wikipedii - rozumiem, co jest reklamowane, ale nie dlatego, że nie zostało to jeszcze sugerowane).

Jestem bardzo zdezorientowany, gdy usługa DNS, taka jak Route53, która nie obsługuje tej mglistej funkcji „GeoDNS”, wyświetla takie funkcje, jak:

Szybko - korzystając z globalnej sieci anycast serwerów DNS na całym świecie, Route 53 ma na celu automatyczne kierowanie użytkowników do optymalnej lokalizacji w zależności od warunków sieciowych. W rezultacie usługa oferuje niskie opóźnienie zapytania dla użytkowników końcowych, a także niskie opóźnienie aktualizacji dla potrzeb zarządzania rekordami DNS.

... co brzmi dokładnie tak, jak ma to robić GeoDNS, ale klienci kierujący geograficznie nie są jeszcze obsługiwani .

Ostatecznie szukam dwóch następujących funkcji od dostawcy DNS:

  1. Mapuj wiele adresów IP do pojedynczej nazwy domeny (np. Google.com, amazon.com itp. Robi)
  2. Skorzystaj z usługi DNS, która będzie odpowiadać na żądania klientów dla tej domeny, podając adres IP najbliższego serwera dla żądającego.

Jak wspomniano, wygląda na to, że jest to część usługi DNS „Anycast” (wszystkie te usługi są), ale funkcje i marketing, które widzę z nich sugerują inaczej, co sprawia, że ​​myślę, że muszę dowiedzieć się więcej o tym, jak DNS działa przed dokonaniem wyboru wdrożenia.

Z góry dziękuję za wszelkie wyjaśnienia.

Riyad Kalla
źródło

Odpowiedzi:

17

Kluczową zaletą GeoDNS jest to, że rozpoznaje tę samą nazwę dla różnych adresów IP na podstawie adresu IP żądającego.

Anycasted serwer DNS zwróci ten sam adres IP, niezależnie od tego, kto pyta.

Oba działają w różnych warstwach sieci. Anycast znajduje się poniżej GeoDNS, ponieważ nie ma pojęcia o lokalizacji adresu IP żądającego, tylko jego miejsce na schemacie sieci. To, co może znajdować się w pobliżu serwera DNS, może nie być w pobliżu żądanego zasobu , a serwer Anycasted DNS nie ma sposobu, aby to powiedzieć.

GeoDNS korzysta z mapy lokalizacji zasobów i wykonuje logikę w celu ustalenia, który z tych zasobów jest najbliżej danego żądającego adresu IP, a następnie zwraca ten adres IP.

O ile nie kolokujesz serwerów DNS z zasobami sieciowymi, to, co jest blisko serwera DNS, nie zawsze będzie blisko zasobu, więc użycie Anycast jako metody lokalizacji danych jest mniej skuteczne niż zwykłe GeoDNS.

sysadmin1138
źródło
Natychmiast, nawet nie zastanawiałem się nad 2 etapami rozwiązania adresu (najpierw znalezienie samego serwera DNS, a następnie znalezienie serwera docelowego). Dzięki!
Riyad Kalla
6

Aspekt anycast BGP umożliwia klientom wysłanie żądania do danego serwera DNS i pobranie tego żądania do pobliskiej instancji serwera DNS za pomocą tabeli routingu BGP, miejmy nadzieję, że otrzyma szybką odpowiedź.

Jednak normalny stary serwer DNS, który jest geograficznie rozproszony i anycastowany, nie ma możliwości odpowiadania na zapytania w różny sposób w zależności od lokalizacji klienta żądającego - jest to dodatkowa funkcja, którą te usługi „Geo-DNS” zapewniają za dodatkową opłatą, umożliwiając aby wysłać klientów do instancji usługi, która jest im bliska.

Powodem istnienia tej funkcji jest to, że anycast BGP działa dobrze dla czegoś bezstanowego, takiego jak DNS, gdzie jest szybki i brudny i nie wymaga trwałego połączenia ani sesji, ale dla czegoś takiego jak serwer WWW, chcesz trzymać instancje na całym świecie i upewnij się, że dany klient będzie się trzymał określonej instancji - zmiany routingu w globalnym połączeniu środkowym tabeli BGP spowodowałyby zerwanie połączeń TCP, przerwanie sesji aplikacji WWW i generalnie spowodowałyby spustoszenie; Z tego powodu anycast zazwyczaj nie jest używany na serwerach internetowych.

Najlepiej jest podać użytkownikowi w hrabstwie X adres IP dla instancji w kraju X przez DNS, za co przepłacasz gotówką za pomocą usługi Geo-DNS.

Shane Madden
źródło
4

Tradycyjnie będziesz mieć wiele serwerów DNS. Klient wybierze jeden losowo i poprosi o podanie adresu IP twojego serwera. Jest to dobre, jeśli serwer DNS znajduje się blisko klienta, ale złe, jeśli - jak to często bywa - serwer DNS jest daleko od klienta. Tak czy inaczej, klient otrzyma ten sam adres IP co odpowiedź.

Anycast pozwala wielu serwerom odpowiedzieć na ten sam adres IP. Dzięki usłudze anycast DNS, gdy klient próbuje rozmawiać z twoim serwerem nazw, odpowiada najbliższy / najszybszy serwer nazw. Oznacza to, że klient zawsze otrzymuje szybką odpowiedź na swoje zapytanie DNS. Jednak zawsze będzie otrzymywać tę samą odpowiedź na swoje zapytanie DNS - adres IP twojego serwera. Jeśli serwer znajduje się daleko od klienta, wrażenia klienta mogą nie być optymalne.

GeoDNS pozwala serwerowi DNS odpowiadać innym adresem IP, w zależności od tego, gdzie znajduje się klient. (Oczywiście wymaga to posiadania wielu geograficznie rozproszonych serwerów.) GeoDNS nie oznacza anycastu, chociaż zazwyczaj wdrażasz oba, tak aby klient otrzymał odpowiedź na swoje zapytanie DNS z pobliskiego geograficznie serwera DNS, który następnie odpowiada adres IP geograficznie położonego serwera WWW.

Cody Hatch
źródło