AWS(Amazon Web Service)

[AWS] Route53

yunseohhe 2024. 10. 14. 20:58

Route53

  • 고가용성, 확장성을 갖춘 완전히 관리되며 권한있는 DNS이다.
      - 권한이 있다. = 고객인 우리가 DNS 레코드를 업데이트 할 수 있다는 것이다.
        (즉, DNS에 대한 완전히 제어할 수 있다.)
  • Route 53는 도메인 이름 레지스트라로 도메인 이름을 등록한다.
  • Route 53의 리소스 관련 상태 확인을 확인 할 수있다.
  • 100% SLA 가용성을 제공하는 유일한 AWS 서비스이다.
  • 왜 Route 53 일까?!
      - 53은 DNS 서비스, 이름에서 사용되는 전통적인 DNS 포트이다.

(출처 : 구글이미지)

  • 클라이언트가 있고, 그들이 우리의 EC2 인스턴스 example.com에 접근하고자 한다.
    그러나 지금 EC2 인스턴스에는 오직 퍼블릭 IP만 있다.
    이때 DNS 레코드를 아마존 Route 53의 호스팅 존에 쓰려고 한다.
  • Route 53 서비스가 IP 54.22.33.44를 응답한다.
    그러면 클라이언트는 바로 EC2 인스턴스에 접근한다.

 

Route53 - Records

  • Route 53에서 여러 DNS 레코드를 정의하고, 레코드를 통해 특정 도메인으로 라우팅하는 방법을 정의한다.
  • 각 레코드는 밑의 내용과 같은 정보를 포함한다.
      - 도메인이나 example.com과 같은 서브 도메인 이름과 같은 정보를 포함한다.
      - 레코드 종류는 예를 들어 A나 AAAA가 있다.
      - 레코드의 값은 예를 들어 123.456.789.123이다.
      - 라우팅 정책은 Route 53이 쿼리에 응답하는 방식이다.
      - TTL(Time To Live)은 DNS 리졸버(resolver)에서 레코드가 캐싱 되는 시간이다.
  • Route 53에서 지원하는 DNS 레코드 종류
      - 반드시 알아야 하는 것은 "A, AAAA, CNAME, NS"
      - 설정할 수 있는 고급 레코드는 "CAA, DS, MX, NAPTR, PTR, SOA, TXT, SPF, SRV"

 

Route53 - Record Types

  • A
     - 호스트 이름과 IPv4 IP를 매핑한다.
       : 예를 들어, example.com은 1.2.3.4.로 바로 연결된다.
  • AAAA
     -  A와 비슷한 아이디어이고, 호스트 이름을 IPv6 주소에 매핑한다.
  • CNAME
     - 호스트 이름을 다른 호스트 이름과 매핑한다.
     - 대상 호스트 이름은 A나 AAAA 레코드가 될 수 있다.
     - Route 53에서 DNS 이름 공간 또는 Zone Apex의 상위 노드에 대한 CNAMES를 생성할 수 없다.
         : 예를 들어, example.com에 CNAME을 만들 수 없지만, www.example.com에 대한 CNAME 레코드는 만들 수 있다.
  • NS
      - 호스팅 존의 이름 서버이다.
      - 서버의 DNS 이름 또는 IP 주소로 호스팅 존에 대한 DNS 쿼리에 응답을 할 수 있다.
      - 트래픽이 도메인으로 라우팅 되는 방식을 제어한다.

 

Route53 - Hosted Zones

  • 호스팅 존은 레코드의 컨테이너이다.
      - 도메인과 서브도메인으로 가는 트래픽의 라우팅 방식을 정의한다.
  • 종류
     - Public Hosted Zones
           : 퍼블릭 도메인 이름을 살 때마다, mypublicdomain.com이 퍼블릭 도메인 이름이라면 퍼블릭 호스팅 존을 만들 수 있다.
           : 퍼블릭 존은 쿼리에 도메인 이름 application1.mypubilcdomainname.com의 IP가 무엇인지 알 수 있다.
     - Private Hosted Zones
           : 공개되지 않는 도메인 이름을 지원한다.
           : VPC(가상 프라이빗 클라우드)만이 URL을 리졸브 할 수 있다.
           : 사기업에는 때때로 회사 네트워크 내에서만 접근 할 수 있는 URL이 있다. 비공개 URL이기 때문에 비공개로 되어 있다.
  • AWS에서 만드는 어떤 호스팅 존이든 월에 50센트를 지불해야한다.
       - 즉, Route 53 사용은 무료가 아니다!
       - 도메인 이름을 등록하면 일 년에 최소 12달러를 지불해야 한다.

(출처 : 구글이미지)

  • Public Hosted Zones
      - 공개된 클라이언트로부터 온 쿼리에 응답할 수 있다.
      - 웹 브라우저에서 example.com을 요청하면 IP를 반환한다.

 

(출처 : 구글이미지)

  • Private Hosted Zones
      - 해당 VPC에서만 동작한다.
      - 비공개 도메인 이름의 프라이빗 리소스를 식별할 수 있게 한다.
      - 예를 들어, 위의 이미지처럼 EC2 인스턴스 1개가 있고 webapp.example.internal을 식별하고자 한다.
         또 다른 EC2 인스턴스에서는 api.example.internal을 식별하기 원하고 데이터베이스에서는 db.example.internal을 식별하고자 한다.
         프라이빗 호스팅 존에 등록하려고 하는데 첫 번째 EC2 인스턴스가 api.example.internal을 요청하는 경우, 프라이빗 호스팅 존은 프라이빗 IP 10.0.0.10이라는 답을 가지고 있다. EC2 인스턴스는 데이터베이스에 연결이 필요할 수도 있는 두 번째 EC2 인스턴스에 연결한다.
         database.example.internal가 무엇인지 물어보면 프라이빗 호스팅 존은 프라이빗 IP를 알려준다. 

 

퍼블릭 호스팅 존은 프라이빗 호스팅 존과 똑같이 작동하지만, 퍼블릭 호스팅 존은 누구든 우리의 레코드를 쿼리 할 수 있다.
프라이빗 호스팅 존은 오직 프라이빗 리소스, VPC에서만 쿼리 할 수 있다.

'AWS(Amazon Web Service)' 카테고리의 다른 글

[AWS] Route 53 - Alias  (1) 2024.10.16
[AWS] Route 53 - Records TTL  (1) 2024.10.15
[AWS] DNS(Domain Name System)  (2) 2024.10.13
[AWS] 알아두면 좋은 포트 목록  (0) 2024.10.12
[AWS] ElastiCache  (1) 2024.10.12