이름 서버가 일부 전략에 따라 IP 주소를 동적으로 확인할 수 있습니까?


11

여러 데이터 센터에 배포 된 웹 사이트의 DNS 확인을위한 일부 네임 서버를 등록했습니다.

현재 DNS 확인 전략은 다른 클라이언트 IP 주소를 기반으로 이름 서버가 동일한 도메인에 대해 다른 IP 주소를 반환한다는 것입니다. 예를 들어 클라이언트 IP 주소가 북미 지역 인 경우 네임 서버는 북미 데이터 센터의 IP 주소 인 IP 주소를 반환합니다.

그러나 클라이언트 IP 주소는 때때로 사용자의 실제 IP 주소가 아닙니다. ISP 또는 프록시 서버에 속하는 DNS의 IP 주소 일 수 있습니다. 반면에 데이터 센터 중 하나가 다운 된 경우 이름 서버가 손상된 데이터 센터에 속하는 해당 IP 주소를 제외하기를 원합니다. 따라서 DNS 확인을위한보다 역동적 인 전략을 얻을 수 있기를 바랍니다. 그에 대한 해결책이 있습니까?


이것은 애니 캐스트의 경우처럼 들립니다.
Ron Maupin

1
@RonMaupin 애니 캐스트를 수행하려면 공급자 독립적 주소 블록 할당이 필요하며 각 데이터 센터에서 접두사를 알리기 위해 BGP실행 하는 것이 더 중요 합니다 . 그것은 완전히 새로운 차원의 운영 이며 많은 "컨텐츠 지향"회사들이 경험 한 것이 아닙니다. DNS 기반 솔루션 이 훨씬 쉬워 보입니다.
IPX

@IPX, 전 세계에 데이터 센터를 보유한 회사는 문제가있는 것처럼 공급자 독립적 인 주소 지정 및 자체 AS 번호를 가질 것이라고 생각합니다. 이를 통해 애니 캐스트는 무료이며 쉽습니다.
Ron Maupin

1
OP 회사가 실제로 전 세계에 여러 데이터 센터를 운영 하고 있다면 @RonMaupin은 그렇습니다. 그러나 아마도 여기에서 비교적 간단한 질문을하지 않을 것입니다. 나는 단순히 여러 상업 데이터 센터에서 자신의 HW를 고용하거나 고용 한 HW를 단순히 배치하고 고급 네트워크 운영에 대해서는 실제로 신경 쓰지 않습니다. 이것이 제가 많은 중소 기업들이 중복성을 위해하는 것을 보았습니다. 이 경우 라우팅이 아닌 DNS가 답 입니다.
IPX

@IPX, 내가 질문에서 얻은 것은 회사에 전 세계에 데이터 센터가 있으며 하나의 데이터 센터가 충돌하면 다른 데이터 센터로 향하는 트래픽이 발생해야한다는 것입니다 ( " 데이터 센터 중 하나가 다운 된 경우 ") . . "). 제 3 자 호스팅에 대해 추측하려고하는 것이 아니라 요청 된 질문에 간단히 대답했지만 그중 일부도 수행하지만 ISP와 피어링하는 데 자체 공급자 독립적 주소 지정 및 AS 번호가 있습니다. 이를 통해 리드 드레싱의 네트워크 중단없이 계약을 협상하고 ISP를 변경할 수 있습니다.
Ron Maupin

답변:


16

애니 캐스트를 원하는 것 같습니다. Google과 같은 사이트에서 사용하는 유형입니다. 모든 웹 사이트에 대해 단일 주소 (DNS로 확인)가 있으며 인터넷 라우팅 프로토콜 (BGP)이 사용자를 가장 가까운 (라우팅 프로토콜에 의해) 사이트로 안내 할 수 있습니다. 사이트가 다운되면 다음으로 가장 가까운 사이트가 BGP에 의해 자동으로 인터넷 라우팅 테이블에 배치됩니다.

전형적인 예는 8.8.8.8DNS입니다. 전 세계의 다른 위치로 확인되며 한 위치가 다운되면 가장 가까운 다음 위치로 이동합니다.

답은 DNS가 아니라 라우팅입니다.


2
동일한 연결에 속하는 패킷이 다른 서버로 이동할 수 있기 때문에 애니 캐스트는 일반적으로 TCP 기반 프로토콜에 유용하지 않습니다.
Paŭlo Ebermann

2
@ PaŭloEbermann은 BGP 라우팅으로 할 때 문제가되지 않습니다. 경로는 일반적으로 발표 할 때 변경되지 않으므로 (사소한 변경 사항)
Ferrybig

2
@ PaŭloEbermann 모든로드 밸런서가 백엔드 선택 방법에 동의하는 한 DSR 기반로드 밸런서에서 애니 캐스트를 수행 할 수 있습니다.
kasperd

3
@ PaŭloEbermann, 그것은 오해입니다. 해당 서버가 다운되지 않으면 한 호스트의 모든 트래픽이 한 서버로 이동하고 트래픽은 다른 서버로 전송됩니다. 그렇습니다. TCP 연결이 끊어 지지만 연결된 서버가 다운 될 때마다 마찬가지입니다. 애니 캐스트는 라운드 로빈 유형이 아닙니다. 라우팅은 결정론 적이므로 애니 캐스트는 결정 론적입니다.
Ron Maupin

2
@RonMaupin Anycast 라우팅은 당신이 암시하는 것만 큼 안정적이지 않습니다. Google은 귀하가 말하는 방식으로 애니 캐스트를 사용하지 않습니다. Google이 실제로 어떻게 수행하는지 알고 싶다면 Google이 게시 한 사이트 안정성 통합 문서의 227 페이지를 참조하십시오. 요컨대, 임의의 캐스트 라우팅 뒤에있는로드 밸런싱 계층은 TCP 연결을 끊을 수있는 라우팅의 불가피한 변경을 보상합니다.
kasperd

9

당신이 필요로하는 것은 정확히 무엇 아마존 Route53 DNS 서비스 제공 :

당신은 필요가 없습니다 개인 데이터 센터에 배포 서비스는 것이다 행복하게 작업, Route53을 사용할 수 있도록 AWS에 귀하의 웹 사이트를 호스팅합니다.

Facebook 또는 Google 가격이 아니라면 100 만 건의 요청 당 0.40 달러 ( 가격 세부 정보 참조 )로 시작해도 문제가되지 않습니다 .

희망이 있습니다 :)


아마존 이외의 제품을 사용한 적이 있습니까?
병아리

@chicks 아뇨. 저는 항상 업무에 가장 적합한 도구를 사용하는 경향이 있으며 대부분의 경우 Route53이 법안에 맞습니다. 그러나 "geo dns service"와 같은 Google을 사용하면 몇 가지 옵션이 제공됩니다. 몇 가지를 빠르게 살펴 보았지만 꽤 비싸 보입니다 (약 $ 50 / 월 – 아마도 AWS Route53으로 지출 한 것보다 훨씬 많은 금액).
MLu

2
나는 대부분의 경우 가장 좋은 도구를 찾은 첫 번째 도구를 호출하기 전에 내 관점을 조금 더 넓힐 것입니다. Route53은 모든 사람에게 가장 적합 할 수 있지만 다른 방법을 시도하지 않은 경우 어떻게 알 수 있습니까?
병아리

-1

나는이 아이디어를 가지고 그것을 코딩하기 시작했지만 필요가 먼저 증발로 끝나지 않았습니다.

DNS 서버에는 LAN에있는 모든 시스템의 호스트 이름과 MAC 주소가 있으며이를위한 방법이 있습니다. 머신에 대한 요청을 수신하면 MAC 주소가 지정된 IP 주소에 대해 역방향 ARP를 전송하고 응답을 사용하여 DNS 응답을 구성합니다.

이것은 당신이하려는 일과 관련이 없지만 요점을 보여줍니다. 이론적으로 DNS 서버는 이름을 IP 주소로 해석하려는 새로운 체계를 수행하도록 코딩 될 수 있습니다.

실제 질문은 고객의 IP 주소를 어디로 보내야하는지 결정하는 방법으로 보입니다. 이것은 약간의 XY 문제입니다. 실제로 원하는 것은 고객의 ISP가 지리적 위치를 찾는 것이므로 8.8.4.4 또는 다른 DNS 리디렉션 서비스가 아니라고 가정하면 요청하는 IP 주소에서 직접 수행하여 얻을 수 있습니다. 내 생각에 DNS 리디렉터에 대한 가장 좋은 해결책은 문제를 무시하고 자체 상대 지리적 위치를 결정하고 (즉, DNS 서버에서 발신 IP 주소를 찾으려고 시도) 적절하게 리디렉션하는 것입니다. 위치 정보를 찾는 방법은 여기를 참조하십시오 : https : //.com/questions/2574542/location-detecting-techniques-for-ip-addresses

당신은 정말로 여기에 애니 캐스트를 원하지 않지만 더 건전한 것을 원합니다. Anycast는 TCP 스트림 중간에 패킷을 다시 라우팅하여 대량 혼동을 일으킬 수 있다는 성가신 특성을 가지고 있습니다.

Ron Maupin은 애니 캐스트가 TCP에 대해 경로를 신뢰할 수 있다고 주장합니다. 달리 보여주는 traceroute는 다음과 같습니다.

 3  cr1-rhe-a-be153.bb.as11404.net (174.127.183.14)  20.657 ms  20.763 ms  19.660 ms
 4  cr1-che-b-be-2.as11404.net (192.175.29.161)  22.550 ms  23.562 ms  23.538 ms
 5  * cr1-9greatoaks-hu-0-6-0-20-0.bb.as11404.net (192.175.28.108)  24.409 ms  38.083 ms
 6  72.14.222.146 (72.14.222.146)  40.038 ms  39.106 ms  39.125 ms
 7  108.170.242.225 (108.170.242.225)  37.930 ms 108.170.243.1 (108.170.243.1)  35.434 ms 108.170.242.225 (108.170.242.225)  33.694 ms
 8  209.85.240.249 (209.85.240.249)  33.476 ms 108.170.232.65 (108.170.232.65)  31.683 ms 108.170.234.155 (108.170.234.155)  30.754 ms
 9  google-public-dns-b.google.com (8.8.4.4)  30.491 ms  28.644 ms  25.718 ms

업스트림 IP 주소를 지리적 위치로 지정하려고하면 Wichita에서 모두 얻을 수있는 확실한 방법입니다. 물리학에 대한 간단한 설명만으로는 충분하지 않습니다.

8.8.4.4 범위는 30ms에서 측정되며 그 중 첫 18ms는 로컬 페널티입니다 (홉 3은 ISP의 로컬 라우터 임). 위치 타까지의 거리는 1297 마일입니다. 따라서 최소 왕복 시간은 18.55ms (1297 * 2 마일 / 초당 225,000km (유리의 빛의 속도))입니다. 따라서 28ms보다 빠른 응답을 얻지 못하지만 25ms 후에 다시 응답합니다.

패킷은 두 개의 다른 BGP 경로로 Google에 도착합니다. BGP가 가장 가까운 것을 선택하지 않았습니다.



의견은 긴 토론을위한 것이 아닙니다. 이 대화는 채팅 으로 이동 되었습니다 .
Ward-Monica Monica 복원

모든 댓글을 채팅으로 옮겼지만 너무 많고 일부는 자동으로 이동되었으므로 나중에 채팅에 모든 내용이 있는지 확실하지 않습니다. 어쨌든이 답변의 유효성과 라우터 작동 방법 등에 대한 추가 토론은 의견에 포함되어서는 안되며 채팅방 중 하나에 보관하십시오. 여기에 추가 의견이 있으면 삭제됩니다.
Ward-Monica Monica 복원

-2

DNS 애니 캐스트와 RFC-7871의 조합으로 필요한 것을 얻을 수 있습니다.


1
더 자세한 내용은 답을 향상시킬 것입니다
Dave M
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.