AWS

Route 53 (Domain Name System 이란? )

sehunbang 2024. 3. 20. 13:57

 

1. DNS란?

DNS란 Domain Name System의 약어로, 인터넷에서 사용되는 컴퓨터나 기기들의 주소를 인터넷 사용자가 쉽게 이해하고 기억할 수 있는 도메인 이름(예: www.google.com)으로변환해주는 시스템입니다.

 

IP 주소를 가지고 있지만, 이 주소는 일반 사용자들이 기억하기 어렵고 입력하기 번거로워서, 대신 이를 쉽게 이해하고 기억할 수 있는 도메인 이름으로 변환해주는 것이 DNS의 역할입니다.

 

DNS는 인터넷에서 매우 중요한 역할을 하며, 인터넷 사용자가 웹 사이트를 방문하거나 이메일을 보내는 등의 모든 인터넷 활동에서 사용됩니다.

  • www.google.com → 172.217.18.36
  • 계층 구조 (뒤쪽이 top level)
  • Registrar : Route53, GoDaddy …
  • DNS Records : A, AAAA, CNAME, NS
  • Zone File
  • Name Server
  • URL
    • Top level Domain
    • Second Level Domain
    • Subdomain
    • Protocol
  • ISP
    • KT, SK Broadband, LG U+

인터넷에서 도메인 이름을 이용하여 웹 사이트나 이메일을 찾을 때는 DNS(Domain Name System) 서비스를 사용합니다. DNS 서비스는 계층적으로 구성된 분산 시스템으로 이루어져 있으며, 이 계층 구조에서는 Root DNS Server, TLD DNS Server, SLD DNS Server가 각각의 역할을 수행합니다.

  1. Root DNS Server
  • Root DNS Server는 DNS 계층 구조에서 가장 상위에 위치한 DNS 서버입니다.
  • 모든 DNS 쿼리는 먼저 Root DNS Server에 도착하여 해당 도메인의 TLD(Top-Level Domain) DNS Server의 주소를 알아내야 합니다.
  • Root DNS Server는 인터넷 상에서 전 세계에 총 13개가 운영되고 있으며, 이들은 전 세계의 인터넷 서비스 제공 업체들에 의해 운영됩니다.
  1. TLD DNS Server
  • TLD DNS Server는 도메인 이름의 최상위 레벨에 해당하는 .com, .net, .org, .kr 등의 TLD를 관리하는 DNS 서버입니다.
  • 모든 도메인 이름은 하나 이상의 TLD에 속하며, TLD DNS Server는 해당 도메인 이름이 속한 SLD(Secod-Level Domain) DNS Server의 주소를 알려줍니다.
  1. SLD DNS Server
  • SLD DNS Server는 도메인 이름의 중간 레벨에 해당하는 DNS 서버입니다.
  • 도메인 이름의 중간 레벨에 해당하는 부분은 일반적으로 사용자가 만든 이름이며, SLD DNS Server는 해당 도메인 이름에 대한 IP 주소를 반환해줍니다.

즉, Root DNS Server는 인터넷에서 가장 상위에 위치하며, TLD DNS Server는 도메인 이름의 최상위 레벨을 관리하고, SLD DNS Server는 중간 레벨을 관리합니다. 이들은 모두 인터넷 사용자가 도메인 이름을 입력하여 해당하는 웹 사이트나 이메일을 찾을 때 중요한 역할을 수행합니다

nslookup naver.com
// 223.130.200.107

nslookup google.com
// 142.250.76.142

 

 

2. 도메인 등록하고 레코드 만들어보기

 

왜 53인가요?

 

 

53은 통신에 사용되는 프로토콜 중 하나인 DNS(Domain Name System)에서 사용하는 기본 포트 번호입니다. DNS는 인터넷에서 사용되는 컴퓨터나 기기들의 주소를 인터넷 사용자가 쉽게 이해하고 기억할 수 있는 도메인 이름으로 변환해주는 시스템으로, 이를 위해 기본적으로 TCP와 UDP를 사용하며, TCP 53번 포트와 UDP 53번 포트를 사용합니다.

 

 

3. IPv4v6, 레코드타입, TTL

IPv4 vs IPv6

IPv4와 IPv6는 인터넷 프로토콜 주소 체계입니다. IPv4는 32비트로 구성된 주소 체계로, 최대 약 43억개의 IP 주소를 사용할 수 있습니다.

192.168.0.1.

하지만, 인터넷 사용자의 증가로 인해 IPv4 주소가 부족해지는 문제가 발생했습니다.

이에 따라, IPv6가 등장하게 되었습니다. IPv6는 128비트로 구성된 주소 체계로, 약 340경개의 IP 주소를 사용할 수 있습니다.

2001:0db8:85a3:0000:0000:8a2e:0370:7334

IPv6는 IPv4에 비해 주소 고갈 문제를 해결할 수 있을 뿐만 아니라, 보안성과 기능 면에서도 개선되었습니다.

 

 

 

 

레코드 타입

DNS 레코드 타입은 다음과 같습니다.

  • A 레코드: 호스트네임과 IPv4 주소를 연결합니다.
  • AAAA 레코드: 호스트네임과 IPv6 주소를 연결합니다.
  • CNAME 레코드: 호스트네임을 다른 호스트네임과 연결합니다. 다른 호스트네임은 반드시 A 혹은 AAAA 레코드가 있어야 합니다.
  • NS 레코드: 호스트존의 네임서버를 지정합니다.

호스트존은 주소록입니다. public 호스트존은 도메인 네임의 IP 주소를 가리키며, private 호스트존은 사설망 내부에서 사용됩니다. 또한, SOA 레코드는 메타 데이터를, NS 레코드는 네임서버 정보를 담고 있습니다.

 

 

CNAME vs Alias

CNAME과 Alias는 DNS 레코드의 유형입니다. 두 레코드는 호스트 이름을 다른 호스트 이름에 매핑하는 데 사용됩니다. 그러나 두 레코드는 서로 다른 용도를 가지고 있습니다.

CNAME 레코드는 호스트 이름을 다른 호스트 이름으로 매핑합니다. 이전에 정의된 호스트 이름의 모든 레코드를 복사하여 새 호스트 이름에 할당합니다. 이는 호스트 이름이 변경되었거나 호스트 이름이 서로 다른 IP 주소를 가리키도록 하려는 경우에 유용합니다.

CNAME은 루트 도메인이 아닌경우에만 적용가능합니다.(ex app.mydomain.com O, mydomain.com X)

Alias 레코드는 호스트 이름을 Amazon S3 버킷, Elastic Load Balancer 또는 Amazon CloudFront 분산 된 웹 사이트와 같은 AWS 리소스에 매핑합니다. 이를 통해 AWS 리소스에 대한 DNS 레코드를 만들 수 있습니다. Alias 레코드는 Amazon Route 53에서만 지원됩니다.

Alias가 가능한 서비스들

  • Elastic Load Balancer
  • Cloudfront
  • API Gateway
  • Elastic Beanstalk
  • S3
  • VPC Interface Endpoints

Alias가 불가능한 서비스

  • EC2

 

TTL

TTL은 Time to Live의 약어로, DNS 레코드가 캐싱될 수 있는 최대 시간을 나타내는 값입니다. TTL이 높을수록 DNS 레코드가 캐싱될 수 있는 시간이 더 길어지므로, 캐시 효율성은 높아집니다. 일반적으로, TTL은 몇 분에서 몇 시간까지로 설정됩니다.

 

 

4. 레코드 등록하기

도메인 만들기 (13 $ / 연간 지출)

 

 

 

 

NS 가 4개인 이유는 백업

 

 

ping 치는건 되지만 브라우저로는 안됨.

 

LOAD Balancer 적용.

 

 

 

5. ALB에 https 적용하기(2)

현제 security 그룹.

 

https 추가

 

 

Load 밴런서 에서 Listener 추가

 

 

Default 옵션을 

MyTargetgroup

 

.......