반응형
1. 찰떡 비유: 스마트폰의 '연락처' 앱 📖
DNS의 역할은 여러분 스마트폰에 있는 '연락처(전화번호부)' 앱과 완벽하게 똑같습니다.
- 과거: 친구 집에 전화하려면 02-123-4567이라는 전화번호(IP 주소)를 외우거나 수첩을 뒤져야 했습니다.
- 현재: 연락처 앱에 '홍길동'이라고 검색해서 통화 버튼을 누르면, 스마트폰이 알아서 010-1234-5678로 전화를 걸어줍니다.
즉, DNS는 사람이 읽기 쉬운 도메인 이름(naver.com)을 컴퓨터가 읽을 수 있는 IP 주소(223.130.200.107)로 번역해 주는 거대한 인터넷 전화번호부입니다.
2. IP 주소를 찾아 떠나는 5단계의 여정
우리가 브라우저에 [www.naver.com](https://www.naver.com)을 입력하고 엔터를 치는 순간, 우리 눈에 보이지 않는 곳에서 아주 바쁘게 IP 주소를 묻고 답하는 과정이 일어납니다.
🏃♂️ 1단계: 내 컴퓨터와 브라우저 캐시 뒤지기
- 브라우저: "어? 사용자님이 네이버 간다는데, 혹시 예전에 가본 적 있어서 주소 기억하고 있니?" (브라우저 캐시, OS의 hosts 파일 확인)
- 주소를 모르면 다음 단계로 넘어갑니다.
🏢 2단계: 로컬 DNS 서버(ISP)에게 묻기
- 내 컴퓨터: (우리가 쓰는 인터넷 통신사 KT, SKT, LG U+의 DNS 서버에게 묻습니다.) "KT님, 혹시 [www.naver.com](https://www.naver.com) IP 주소 아시나요?"
- 로컬 DNS: "잠시만, 내 장부엔 없네. 내가 인터넷 대장님들한테 물어보고 올게!"
🌍 3단계: 루트(Root) DNS 서버에게 묻기
- 로컬 DNS: "루트 서버님! [www.naver.com](https://www.naver.com) 주소 좀 알려주세요!"
- 루트 DNS: (세상 모든 도메인의 끝단(.com, .kr, .net 등)을 관리하는 대장 서버입니다.) "난 네이버는 모르고, .com으로 끝나니까 .com을 담당하는 관리자(TLD) 주소를 알려줄 테니 걔한테 가봐!"
🏢 4단계: TLD(Top-Level Domain) DNS 서버에게 묻기
- 로컬 DNS: ".com 관리자님! [www.naver.com](https://www.naver.com) 주소 아시나요?"
- TLD DNS: "음, 나는 .com 밑에 있는 애들만 알아. naver.com을 산 사람이 **자기 주소를 등록해 둔 전용 서버(Authoritative DNS)**가 저기 있으니까 그쪽으로 가봐!"
🎯 5단계: 권한 있는(Authoritative) DNS 서버의 최종 답변
- 로컬 DNS: "네이버 전용 서버님! 드디어 찾았네요. [www.naver.com](https://www.naver.com) IP 주소 뭡니까?"
- 네이버 DNS: "아, 우리 웹서버 IP 주소는 223.130.200.107이야!"
- 로컬 DNS ➔ 내 컴퓨터: "사용자님, 알아왔습니다! 주소는 223.130.200.107이랍니다. 저도 다음번엔 바로 대답하게 메모장(캐시)에 적어둘게요."
이제 브라우저는 저 IP 주소를 가지고 무사히 네이버 서버에 접속(저번에 배운 TCP/TLS Handshake)을 시작하게 됩니다.
3. 프론트/백엔드 개발자가 DNS를 다룰 때 (실무)
여러분이 열심히 웹 서비스를 만들어서 배포했다고 해봅시다. 아마존(AWS) 서버에 올렸더니 13.124.55.10 같은 IP 주소가 나왔습니다. 이걸 고객들한테 외우라고 할 순 없겠죠?
- 가비아, 후이즈 같은 사이트에서 my-awesome-site.com이라는 도메인을 돈 주고 삽니다.
- 내가 산 도메인의 설정 화면에 들어가서, **AWS 서버의 IP 주소를 연결(A 레코드 추가)**해 줍니다.
- 그러면 전 세계의 DNS 서버들이 "아, 저 도메인은 저 IP로 가야 하는구나!" 하고 소문을 내기 시작합니다. (이를 DNS 전파(Propagation)라고 하며, 보통 몇 분에서 길게는 24시간이 걸립니다.)
📝 요약
- DNS (Domain Name System): 사람이 읽는 영문 도메인 주소를 컴퓨터가 쓰는 숫자 IP 주소로 바꿔주는 시스템.
- 해석 과정: 내 컴퓨터 ➔ 통신사 DNS ➔ 루트 DNS ➔ .com DNS ➔ 네이버 전용 DNS를 거치며 꼬리잡기식으로 주소를 알아낸다.
- 실무: 도메인을 구매한 후, 내 서버의 실제 IP 주소와 연결(매핑)해 주는 작업이 필수다.
728x90
반응형
'1일 1CS(Computer Science)' 카테고리의 다른 글
| 🎫 [1일 1CS] 서버가 나를 기억하지 않아도 로그인이 유지되는 비결: JWT (1) | 2026.03.19 |
|---|---|
| 🎡 [1일 1CS] 뇌가 하나인데 어떻게 동시에 일을 해? 자바스크립트 이벤트 루프 (0) | 2026.03.19 |
| 🔒 [1일 1CS] 주소창에 HTTPS를 쳤을 때 벌어지는 마술: SSL/TLS Handshake (0) | 2026.03.18 |
| 🏗️ [1일 1CS] 거대한 성을 부수고 마을을 짓다: 모놀리식 vs 마이크로서비스(MSA) (0) | 2026.03.17 |
| 🎢 [1일 1CS] 배달 앱 서버가 안 터지는 비밀: 메시지 큐 이야기 (0) | 2026.03.17 |