본문 바로가기
Frontend

DNS

by 프로그레머 2024. 3. 6.

 

DNS

 

 

DNS(Domain Name System)는 인터넷상의 도메인 이름을 IP 주소로 변환하는 시스템

 

1. 브라우저 캐시

  • 브라우저는 먼저 자체 캐시를 확인
  • 요청된 도메인의 IP 주소를 찾는다
  • 최근 방문한 경우 사이트의 DNS 정보가 일정 시간 동안 브라우저에 저장되어 있음

2. 운영 체제(OS) 캐시

  • 브라우저 캐시에 없다면, 브라우저는 운영 체제의 DNS 정보를 확인
  • 운영 체제 역시 자체적으로 DNS 정보를 캐싱

3. 라우터 캐시

  • 운영 체제 수준에서도 DNS 정보 찾지 못했다면, 다음으로 네트워크 라우터의 캐시 확인
  • 라우터는 로컬 네트워크 내의 모든 기기에 대해 DNS 조회 결과 캐싱 가능

4. ISP의 DNS 서버

  • 로컬 캐시에서도 해당 DNS 정보를 찾지 못하면, 브라우저는 인터넷 서비스 제공 업체(ISP)의 DNS 서버에 조회 요청
  • ISP의 DNS 서버는 보다 넓은 범위의 DNS 조회 요청을 처리하며, 필요한 정보를 캐싱

5. 루트 DNS 서버

  • ISP의 DNS 서버조차도 요청된 도메인의 정보를 가지고 있지 않다면, 루트 DNS 서버에 요청을 보냄
  • 루트 DNS 서버는 전 세계에 13개가 분산되어 있으며, 도메인의 최상위 레벨(TLD, 예: .com, .net)에 대한 정보를 제공

6. TLD(Top-Level Domain) 서버

  • 루트 서버는 요청된 도메인의 TLD에 해당하는 서버로 요청을 안내
  • TLD 서버는 해당 TLD(예: .com, .org)에 속한 도메인들의 정보를 관리

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

  • TLD 서버는 도메인의 권한 있는 DNS 서버 정보를 제공
  • 권한 있는 DNS 서버는 해당 도메인의 정확한 IP 주소를 가지고 있음

8. 캐싱과 응답

  • 권한 있는 DNS 서버로부터 IP 주소를 받으면, 이 정보는 역순으로 경로를 따라 ISP의 서버, 라우터, 운영 체제, 브라우저 캐시에 저장됨
  • 다음 번 같은 도메인 이름에 대한 조회 요청이 있을 때 더 빠르게 응답 가능

'Frontend' 카테고리의 다른 글

CORS  (0) 2024.03.06
Webpack, Babel, Polyfill  (0) 2024.03.06
브라우저에 www.google.com 입력 시 일어나는 일  (0) 2024.03.06
브라우저 렌더링 과정 or 원리  (0) 2024.03.06
GET과 POST  (1) 2024.03.06