다른 국가의 google.com 다른 IP 어떻게?


15

다른 국가에서 google.com을 핑 (ping)하면 로컬 Google 서버에서 답장을받습니다. 어떻게 작동합니까? DNS 레코드에 여러 개의 A 주소가있을 수 있습니까? 누군가 내가 그렇게하는 데 사용하는 기술을 알려줄 수 있습니까?

최신 정보. Google의 DNS 서버는 위치에 따라 다른 IP를 제공합니다. 그러나 Alexandre Jasmin이 지적했듯이 위치를 어떻게 추적합니까? 확실히 그들의 DNS는 당신의 IP 주소를 보지 못할 것입니다. Google의 DNS를 쿼리하는 서버는 자신이 나타내는 위치에서 오는 것이 보장됩니까?


답변:


10

DNS 이름에는 여러 개의 A 레코드가있을 수 있으며 클라이언트는 레코드를 선택하고 해당 주소를 사용할 수 있습니다.

그러나 Google의 DNS 서버는 IP 주소에 따라 다른 A 레코드를 제공하므로 가까운 서버를 사용할 수 있습니다.


젠장! 분 미만으로 날 이길 :) +1
Billy ONeal

그렇다면 DNS 서버가이를 구체적으로 지원해야합니까? 이것을 제공하는 호스팅 회사가 있습니까?
HeavyWave

1
그들은 일반적으로에 따라이 작업을 수행 할 수 없습니다 당신의 IP 주소 맞죠? 구글의 DNS 서버가없는 사실에 볼 수 있도록 DNS 요청은 일반적으로 먼저 ISP DNS 서버를 통해 이동 하여 IP
알렉스 재스민

2
@Alexandre : 그렇습니다. 그러나 ISP의 리졸버가 현재와 같은 지역에있을 가능성이 높기 때문에 일반적으로 작동합니다. OpenDNS 및 이와 유사한 서비스를 사용하는 클라이언트에게는 작동하지 않습니다.
Martin

1
@Martin 나는 그것이 보통 어쨌든 작동 한다는 것에 동의한다 . OpenDNS는 애니 캐스트 라우팅을 사용하므로 요청을 전달하는 방법에 따라 잘 작동 할 수 있다고 생각합니다.
Alex Jasmin


2

DNS 서버에 Anycast IP 주소를 사용하고 있다고 생각 합니다. 따라서 전 세계 어느 지역에 따라 다른 DNS 서버 (같은 IP 주소를 가지고 있음에도 불구하고)가 쿼리에 응답합니다. 그리고 해당 서버는 사용자의 위치에 가장 적합한 IP 주소를 알고 있습니다.


+1, Correct, Google (및 기타 많은 대규모 네트워크)은 Anycast를 사용하여 가장 가까운 서버로 요청을 라우팅합니다. 여러 서버의 IP가 동일하며 BGP의 AS 경로에 따라 가장 가깝습니다.
Chris S

1

Google은 라운드 로빈 DNS를 사용 합니다 . 기본적으로 Google의 DNS 서버는 사용자의 위치에 따라 주소를 변경합니다.


5
지리적으로 가장 가까운 서버를 선택하기 때문에 실제로 라운드 로빈은 아닙니다. 예를 들어 프랑스에서 요청을 할 때 미국의 Google 서버를 얻을 수는 없습니다 (모든 로컬 서버가 죽지 않았다고 가정).

1
@ 팀 그린-좋은 지적. 아이디어는 동일합니다.
Billy ONeal

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.