도메인과 DNS 그리고 흐름에 대하여.

neunghi·2025년 3월 15일
0

NETWORK

목록 보기
6/6
post-thumbnail

DNS (Domain Name System)와 Route 53은 인터넷에서 도메인 이름을 IP 주소로 변환하는 중요한 역할을 합니다.
DNS는 웹사이트를 접속할 때 필요한 이름을 숫자 형태의 IP 주소로 변환해주는 시스템으로, 이를 통해 사용자는 복잡한 IP 주소 대신 친숙한 도메인 이름으로 웹사이트를 쉽게 방문할 수 있습니다.

1. DNS의 기본 원리

DNS는 일종의 주소록처럼 작동하며, 도메인 이름을 그에 해당하는 IP 주소로 변환해줍니다.
예를 들어, 웹사이트 주소 www.example.com을 입력하면, DNS가 이 도메인에 대응하는 IP 주소를 찾아서 웹사이트로 연결하는 역할을 합니다.

2. DNS Lookup 흐름

DNS Lookup은 사용자가 도메인 이름을 입력했을 때, 그에 해당하는 IP 주소를 찾는 과정입니다.

1. 사용자가 웹 브라우저에 도메인 입력

예를 들어, www.example.com을 입력하면 브라우저는 해당 도메인에 대한 IP 주소를 찾기 위해 DNS 요청을 시작합니다.

2. 브라우저의 로컬 DNS 캐시 확인

브라우저는 먼저 로컬 DNS 캐시를 확인하여 해당 도메인 이름에 대한 IP 주소가 이미 저장되어 있는지 확인합니다. 캐시에 있으면, 그 IP 주소를 바로 사용합니다.

3. 운영 체제의 DNS 캐시 확인

만약 로컬 캐시에 없다면, 운영 체제의 DNS 캐시를 확인합니다. 만약 운영 체제에서 이미 IP 주소를 알고 있다면, 이를 반환합니다.

4. DNS 서버로 요청 전달 (Recursive DNS Resolver)

  • 로컬 캐시나 운영 체제 캐시에서 IP 주소를 찾을 수 없다면, 브라우저는 Recursive DNS Resolver (보통 인터넷 서비스 제공업체(ISP)에서 제공하는 DNS 서버)로 요청을 전달합니다.
  • 이 서버는 도메인의 IP 주소를 찾을 때까지 여러 DNS 서버를 차례대로 조회하는 역할을 합니다.

5. 루트 DNS 서버

  • Recursive DNS Resolver는 루트 DNS 서버에 요청을 보냅니다. 루트 DNS 서버는 전체 도메인 네임 시스템의 최상위에 위치한 서버로, 최상위 도메인(TLD) 서버의 정보를 제공합니다.
  • 예를 들어, www.example.com에 대한 요청이 들어오면, 루트 DNS 서버는 .com 도메인에 대한 정보를 제공하는 TLD DNS 서버를 알려줍니다.

6. TLD (Top-Level Domain) DNS 서버

  • Recursive DNS Resolver는 이제 TLD DNS 서버에 요청을 보내고, 이 서버는 example.com에 해당하는 권한 있는 DNS 서버의 정보를 반환합니다.
  • .com TLD 서버는 example.com 도메인에 대한 권한 있는 DNS 서버를 알려줍니다.

7. 권한 있는 DNS 서버 (Authoritative DNS Server)

  • Recursive DNS Resolver는 권한 있는 DNS 서버에 요청을 보내고, 이 서버는 www.example.com에 해당하는 실제 IP 주소를 반환합니다.
  • 이 IP 주소는 보통 A 레코드(IPv4 주소) 또는 AAAA 레코드(IPv6 주소)로 제공됩니다.

8. IP 주소 반환

  • Recursive DNS Resolver는 최종적으로 찾은 IP 주소를 사용자의 브라우저로 반환하고, 이제 브라우저는 해당 IP 주소로 웹사이트를 요청하여, 서버에서 웹 페이지를 받아옵니다.

9. 브라우저에서 페이지 로드

IP 주소를 통해 서버와 연결이 이루어지면, 브라우저는 웹 페이지를 요청하고, 해당 서버에서 페이지가 로드됩니다.

이 흐름에서 중요한 점은 캐싱입니다.
DNS 레코드는 일정 시간 동안 유효하며, 이 기간을 TTL(Time to Live)이라고 합니다.
TTL이 지나면, 해당 정보를 다시 갱신해야 합니다.
또한, 각 단계에서 DNS 서버가 캐시를 가지고 있기 때문에, 같은 도메인에 대한 여러 번의 요청은 빠르게 처리될 수 있습니다.

Amazon Route 53

Amazon Route 53은 AWS에서 제공하는 클라우드 기반의 DNS 서비스입니다. Route 53은 DNS 레코드의 관리, 도메인 이름 등록, 트래픽 라우팅 및 상태 검사 등을 제공합니다.

  • DNS 레코드 관리
    Route 53은 도메인 이름에 대한 다양한 DNS 레코드를 생성하고 관리할 수 있습니다. 예를 들어, A 레코드, CNAME 레코드, MX 레코드 등을 설정할 수 있습니다.
  • 도메인 이름 등록
    Route 53을 사용하여 도메인을 등록하고 관리할 수 있습니다. 예를 들어, example.com을 등록하여 AWS에서 DNS 관리를 시작할 수 있습니다.
  • 트래픽 라우팅 정책
    Route 53은 지리적 위치, 가용성, 지연 시간 등을 기준으로 트래픽을 다양한 리전으로 라우팅할 수 있는 기능을 제공합니다.
    이를 통해 웹 애플리케이션의 가용성을 높이고 성능을 최적화할 수 있습니다.
  • 상태 검사 (Health Checking)
    Route 53은 헬스 체크 기능을 제공하여, 특정 서버나 서비스가 정상적으로 동작하는지 검사할 수 있습니다.
    헬스 체크가 실패하면, Route 53은 트래픽을 다른 건강한 서버로 자동으로 라우팅할 수 있습니다.
  • DNS Failover
    만약 하나의 리전이나 서버가 실패하면, Route 53은 자동으로 다른 서버로 트래픽을 전환할 수 있습니다.
    이는 웹 애플리케이션의 고가용성을 보장하는 데 유용합니다.

4. Route 53에서 DNS 설정

Route 53에서 DNS 레코드를 설정하려면 호스팅 영역을 생성하고, 그 안에 다양한 레코드를 추가할 수 있습니다.

  • A 레코드
    도메인을 특정 IP 주소로 매핑합니다.
  • CNAME 레코드
    도메인을 다른 도메인에 매핑합니다.
  • MX 레코드
    이메일 서버의 주소를 설정합니다.

5. Route 53의 장점

  • 글로벌 분산 네트워크
    Route 53은 AWS의 글로벌 인프라를 사용하여 빠르고 안정적인 DNS 서비스를 제공합니다.
  • 자동화된 트래픽 라우팅
    Route 53은 다양한 트래픽 라우팅 정책을 통해 효율적인 트래픽 분배를 지원합니다.
  • 유연성
    Route 53은 다양한 레코드 유형과 기능을 지원하여, 복잡한 DNS 설정을 처리할 수 있습니다.
profile
나는 능히 할 수 있는 버섯이다! 🍄‍🟫

0개의 댓글