google.com inny adres IP w różnych krajach. W jaki sposób?

15

Jeśli wyślesz ping na google.com z różnych krajów, otrzymasz odpowiedzi z lokalnych serwerów google. Jak to działa? Czy rekord DNS może mieć wiele adresów A? Czy ktoś mógłby wskazać mi technologię, której używają do tego?

Aktualizacja. OK, więc serwer DNS Google podaje inny adres IP w zależności od lokalizacji. Ale, jak zauważył Alexandre Jasmin, w jaki sposób śledzą lokalizację? Na pewno ich DNS nigdy nie zobaczy twojego adresu IP. Czy serwer kwerendujący DNS Google ma gwarancję, że pochodzi z lokalizacji, którą reprezentuje?

HeavyWave
źródło

Odpowiedzi:

10

Nazwa DNS może mieć wiele rekordów A, klienci mogą następnie wybrać dowolny rekord i użyć tego adresu.

To nie jest cała prawda, serwery DNS Google również dają różne rekordy A w zależności od twojego adresu IP, dzięki czemu możesz korzystać z najbliższego serwera.

Jaskółka oknówka
źródło
Niech cię! Pokonaj mnie o niecałą minutę :) +1
Billy ONeal
Czy serwer DNS musi to w szczególności obsługiwać? Czy są jakieś firmy hostingowe, które to zapewniają?
HeavyWave
1
Nie mogą tego zrobić w zależności od twojego adresu IP, prawda? Żądania DNS zwykle przechodzą najpierw przez twój serwer DNS ISP, więc serwery DNS Google nie widzą twojego adresu IP
Alex Jasmin
2
@Alexandre: tak, ale zwykle i tak działa, ponieważ Twój dostawca usług internetowych najprawdopodobniej znajduje się w tej samej części świata, co Ty. Nie działa jednak w przypadku klientów korzystających z OpenDNS i podobnych usług.
Martin
1
@Martin Zgadzam się, że i tak zazwyczaj działa . Jeśli chodzi o OpenDNS, myślę, że używają routingu anycast, więc może on również działać w zależności od tego, jak przekażą żądanie.
Alex Jasmin
4

Myślę, że nazywa się CDN

ariefbayu
źródło
2

Myślę, że używa adresów IP Anycast dla serwerów DNS. W zależności od tego, w jakiej części świata się znajdujesz, inny serwer DNS (choć z tym samym adresem IP) odpowie na twoje zapytanie. I ten serwer będzie wiedział, który adres IP jest najlepszy dla Twojej lokalizacji.

Jacek Konieczny
źródło
+1, poprawnie, Google (i wiele innych dużych sieci) używają Anycast do kierowania żądań do najbliższego serwera. Wiele serwerów ma ten sam adres IP, a Ty otrzymujesz najbliższe trasy AS w BGP.
Chris S
1

Google używa usługi Round Robin DNS . Zasadniczo serwer DNS Google zmienia adres, który ci podaje, w zależności od Twojej lokalizacji.

Billy ONeal
źródło
5
To nie jest tak naprawdę Round Robin, ponieważ konkretnie wybiera twoje najbliższe geograficznie serwery. Na przykład nigdy nie zdobędziesz amerykańskich serwerów Google, wysyłając zapytanie z Francji (zakładając, że wszystkie lokalne nie są martwe).
1
@Tim Green - dobra uwaga. Pomysł jest jednak taki sam.
Billy ONeal