AWS - DNS

Jaca·2021년 12월 28일
0

DNS의 구성 및 체계

인터넷 도메인 체계에서 최상위는 루트(root)로, 인터넷 도메인의 시작점이 된다.

이 루트 도메인 바로 아래 단계있는 것을 1단계 도메인이라 하며, 이를 최상위 도메인 혹은 TLD(Top Level Domain)라 한다.
최상위 도메인은 국가명을 나타내는 국가 최상위 도메인과 일반적으로 사용되는 일반 최상위 도메인으로 구분된다.

도메인을 구입할때 대략적으로 위와 같은 과정을 거쳐 도메인명을 지정하게 된다.

DNS의 동작 원리

다음의 다이어그램은 재귀적 DNS 서비스와 신뢰할 수 있는 DNS 서비스가 서로 연계하여 최종 사용자를 웹사이트나 애플리케이션으로 전달하는 방법에 대한 개요를 보여준다.

  1. 사용자가 웹 브라우저에 주소를 입력한다.
  2. 주소에 대한 요청은 일반적으로 인터넷 서비스 제공 업체(ISP)가 관리하는 DNS 해석기로 전달 된다.
  3. ISP의 DNS 해석기는 주소에 대한 요청을 DNS 루트 이름 서버에 전달한다.
  4. ISP의 DNS 해석기는 주소에 대한 요청을 .com 도메인의 TLD 이름 서버중 하나에 다시 전달한다.
  5. ISP의 DNS gotjrrlsms Amazon Route 53 이름 서버 하나를 선택해 주소에 대한 요청을 해당 이름 서버에 전달한다.
  6. Amazon Route 53 이름 서버는 주소의 호스팅 영역에서 해당 레코드를 찾아 웹 서버의 IP 주소 값을 받고 DNS 해석기로 반환한다.
  7. 사용자에게 필요한 IP 주소를 반환한다. 이 값을 캐싱해 일정 시간 보관하여 다른 사용자의 접근을 대비한다.
  8. 웹 브라우저는 DNS 해석기로부터 얻은 IP 주소에 대한 요청을 전송한다.
    이 곳이 컨텐츠가 있는 곳이며 웹사이트 엔드 포인트로 구성된 Amazon S3 버킷 혹은 EC2 인스턴스가 실행되는 웹 서버이다.
  9. 웹 서버 또는 그 밖의 리소스의 웹 페이지를 웹 브라우저로 반환하고, 웹 브라우저는 이 페이지를 표시한다.

Amazon Route 53

Amazon Route 53는 가용성과 확장성이 우수한 클라우드 기반의 DNS 웹 서비스이다.
개발자와 기업은 최종 사용자를 인터넷 애플리케이션에 매우 안정적이며 효율적인 비용을 연굴할 수 있고, 또 사용자의 요청을 EC2 인스턴스, Elastic Load Balancing, S3 Bucket 등 AWS에서 실행되는 다양한 인프라에 효과적으로 연결할 수 있다.

연결 체크 및 Failover

Route 53의 Health Check 기능을 사용하면 연결된 응용프로그램의 각 끝점을 모니터링하여 서비스의 사용 가능 여부를 확인하고 상태를 반환한다.
이를 통해 외부 사용자가 직접 접속한 것 같은 시뮬레이션이 가능하다.

리소스의 연결상태가 좋지 않을 때 알림 메일을 수신하도록 각 상태 검사에 대해 CloudWatch 알림을 구성할 수 있다.
또 장애 조치가 구성되어 있고 에이전트가 정상이 아니면 Route 53은 외부 사용자를 정상적으로 연결 가능한 사전 정의된 대체 서버나 지정된 엔드포인트로 연결을 전환시킬 수 있다.

고가용성 DNS 사비스 및 DNS Failover

Route 5는 상태 검사와 연결도니 장애 조치 레코드를 구성할 수 있다.
상태 검사가 정상적으로 반환되면 응용프로그램은 계속 정상적으로 작동한다.

비정상 상태가 반환되면 Route 53에서 정상 상태가 아닌 끝점 값을 반환하지 않고 오류 복구 레코드의 값에 대해 응답하기 시작한다.

지연 시간 기반 라우팅

Route 53은 가장 지연 시간이 적은 리소스로 DNS 쿼리에 응답 처리하여 지연 시간 기반 라우팅 서비스를 제공한다.
이 것은 최종 사용자에게 최저 지연 시간을 제공하는 엔드포인트로 라우팅을 제공하며, 일정 기간 동안 수행된 지연 시간 측정을 기반으로 하며 주기적으로 지연 시간을 측정하여 변경 사항을 반영한다.

가중치 기반 라우팅

여러 리소스 레코드를 단일 DNS 이름으로 연결 후 같은 기능을 수행하는 여러 리소스에 대해 사용자가 지정한 가중치 비율로 트래픽을 라우팅할 수 있다.

이러한 가중치 기반 라우팅은 로드 밸런싱 및 테스트 등 다양한 목적에 사용된다.

지역 기반 라우팅

요청이 시작된 지리적 위치를 기반으로 특정 엔드포인트에 대한 라우팅을 수행하는 기능이다.

국가별 또는 지역적 위치에 따라 현지화된 콘텐츠를 사용자별로 제공하거나, 라이센스가 있는 시장에만 배포를 한정할 수 있다.

profile
I am me

0개의 댓글