HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🐣
프론트엔드 데브코스 3기 교육생
/
📚
3기 스터디 가이드
/
📒
CS 학습 스터디
/
DNS(민종)

DNS(민종)

DNS(Domain Name System)?

모든 웹 페이지를 IP 주소로만 접속해야 한다면 어떨까? 🤔
  • 도메인 이름과 IP 주소를 서로 변환시켜주는 시스템이다.
  • 192.168.1.1 or 2400:cb00:2048:1::c629:d7a2 과 같은 복잡한 IP 주소를 기억할 필요가 없게 된다.
    • notion image
 
많은 네임 서버의 계층으로 구현된 분산형 데이터베이스다.
  • . 은 계층을 나타낸다.
notion image
왜 중앙집중화 하지 않았을까?
  • 서버 장애 & 트래픽 집중 문제
  • 중앙 서버와의 거리 문제
왜 DNS 서버의 주소를 변경했는데 다운로드 속도가 빨라지는 걸까?
  • 지역이나 통신사에 따라 찾는 DNS 서버가 다르기 때문이다.

DNS의 구성요소

Domain Name Space

  • DNS는 거대한 분산 시스템이다.
  • 도메인 네임스페이스는 DNS가 저장, 관리하는 계층적 구조를 의미한다.
  • 최상위인 루트 DNS 서버가 존재하고, 하위로 노드가 연결되어 이어진 계층 구조이다.
    • notion image

Name Server === DNS Server

  • 도메인을 IP 주소로 변환시키기 위해 도메인 네임 스페이스의 트리 구조에 대한 정보를 가지고 있는 서버이다.
  • 데이터베이스의 역할을 수행한다.
  • 요청 처리 및 응답 구현되어 있다.

Root Server

  • 국제 인터넷 관리기구인 ICANN에서 직접 관리하는 서버이다.
  • 가장 최상위에 있는 서버로 TLD DNS 서버의 IP 주소를 저장하고 안내하는 역할을 한다.

TLD Server

  • 도메인 등록 기관인 IANA에서 관리하는 서버이다.
  • SLD 서버의 IP 주소를 저장하고 안내하는 역할을 한다.

SLD Server

  • 실제 개인 도메인과 IP 주소의 관계가 기록되는 서버이다.
  • 일반적으로 도메인, 호스팅 업체의 네임서버를 말한다.

Recursive Server

IP 주소와 도메인 이름을 매핑한다.

Resolver

  • 클라이언트의 요청을 네임 서버로 전달하고 응답을 받아 클라이언트에게 제공하는 기능을 수행한다.
    • 네임 서버에 정보가 없으면 다른 네임 서버로 요청을 보낸다.
  • 수많은 네임서버에 접근하여 도메인의 IP 정보를 조회하는 기능을 수행한다.

DNS 동작과정

  1. 사용자가 웹 브라우저에 'example.com'을 입력하면, 쿼리가 인터넷으로 이동하고 resolver가 이를 수신한다.
  1. resolver가 DNS 루트서버(.)에 요청을 보낸다.
  1. 루트 서버가, 도메인에 대한 정보를 저장하는 TLD 서버의 주소로 응답.
  1. .com TLD 서버에 요청을 보낸다.
  1. TLD 서버가 도메인 SLD 서버의 주소로 응답.
  1. SLD 서버에 요청을 보낸다.
  1. example.com의 IP 주소가 resolver로 반환된다.
  1. resolver가 처음 요청한 도메인의 IP 주소로 웹 브라우저에 응답.
  1. 브라우저가 IP 주소로 HTTP 요청을 보냄.
  1. 해당 IP의 서버가 브라우저에서 렌더링할 웹 페이지를 반환
notion image

DNS Cache

다시 ‘example.com’ 으로 요청을 보내기 위해서 위와 같은 과정을 다시 반복해야할까?
  • 비효율적이기 때문에 PC는 DNS Cache를 활용해 자주 사용하는 DNS 주소를 저장해 놓는다.

참고

DNS란? (도메인 네임 시스템 개념부터 작동 방식까지) - 하나몬
이 게시물의 중요 포인트 DNS(도메인 네임 시스템)이 사람이 읽을 수 있는 도메인 이름(www.hanamon.kr)을 IP 주소로 변환하는 시스템이라는 것은 쉽게 알 수 있습니다. 이번 글에서는 이렇게 도메인 주소를 IP 주소로 변환할 수 있게 하는 인프라가 어떻게 구성 되어있고 실제로 어떤 기계들이 어떤 과정으로 동작 하는지 알아보겠습니다.
DNS란? (도메인 네임 시스템 개념부터 작동 방식까지) - 하나몬
https://hanamon.kr/dns%eb%9e%80-%eb%8f%84%eb%a9%94%ec%9d%b8-%eb%84%a4%ec%9e%84-%ec%8b%9c%ec%8a%a4%ed%85%9c-%ea%b0%9c%eb%85%90%eb%b6%80%ed%84%b0-%ec%9e%91%eb%8f%99-%eb%b0%a9%ec%8b%9d%ea%b9%8c%ec%a7%80/
DNS란? (도메인 네임 시스템 개념부터 작동 방식까지) - 하나몬
[WEB] 🌐 DNS 개념 & 동작 ★ 알기 쉽게 정리
​DNS (Domain Name System) 란? 도메인 네임 시스템 (Domain Name System, DNS) 은 호스트의 도메인네임 (www.example.com)을 네트워크주소(192.168.1.0)로 변환하거나, 그 반대의 역할을 수행하는 시스템이다. 예를 들면 우리가 자주 접하는 naver.com , google.com 모두 DNS을 가진 DN(Domain Name)이라고 할 수 있다. 이들은 사실 문자열의 탈을 쓴 IP이다.
[WEB] 🌐 DNS 개념 & 동작 ★ 알기 쉽게 정리
https://inpa.tistory.com/entry/WEB-%F0%9F%8C%90-DNS-%EA%B0%9C%EB%85%90-%EB%8F%99%EC%9E%91-%EC%99%84%EB%B2%BD-%EC%9D%B4%ED%95%B4-%E2%98%85-%EC%95%8C%EA%B8%B0-%EC%89%BD%EA%B2%8C-%EC%A0%95%EB%A6%AC
[WEB] 🌐 DNS 개념 & 동작 ★ 알기 쉽게 정리
[이해하기] DNS (Domain Name Server) | STEVEN J. LEE
DNS (Domain Name Server) 란, 전화번호부와 같이 www.stevenjlee.net 과 같이 사람이 쉽게 기억하고 읽을 수 있는 주소 (또는 이름) 를 컴퓨터가 이해할 수 있는 IP 주소 (예> 192.0.0.1) 로 변환하여 사용자의 컴퓨터가 서버로 접근할 수 있도록 하는 서비스를 제공하는 서버를 의미합니다.
[이해하기] DNS (Domain Name Server) | STEVEN J. LEE
https://www.stevenjlee.net/2020/07/08/%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-dns-domain-name-server/
[이해하기] DNS (Domain Name Server) | STEVEN J. LEE
Domain Name System(DNS): Hierarchy를 중심으로
사람들의 신원을 증명하는 identifier에는 이름, 신분증, 여권 등 여러가지가 있다. Internet hosts와 routers는 datagram을 address하기 위해서 하기 위해서 IP address(32 bit)를 사용한다. 그러나 사람들은 www.google.com과 같은 방식으로 접근한다. Domain Name System (DNS) 많은 네임 서버의 hierarchy로 구현된 분산형 데이터베이스(Distributed Database)이다. Application-layer protocol로, hosts와 DNS server는 name과 address간의 매핑을 위해 통신한다.
Domain Name System(DNS): Hierarchy를 중심으로
https://seungwoolog.tistory.com/123
Domain Name System(DNS): Hierarchy를 중심으로