DNS와 도메인의 원리 — 내 도메인은 어떻게 IP로 연결될까?

DNS와 도메인의 원리

워드프레스·도커·클라우드플레어·AWS EC2 등에서
“도메인을 연결한다”는 과정을 하다 보면
A레코드, CNAME, 네임서버, TTL 같은 단어를 자주 마주칩니다.

하지만 도메인이 어떻게 실제 서버와 연결되는지를 정확히 이해하면
DNS 오류, IP 변경, SSL 설정 같은 문제를 훨씬 빠르게 해결할 수 있습니다.


DNS란 무엇인가?

DNS(Domain Name System)는
‘사람이 기억하기 쉬운 도메인 이름을 IP 주소로 바꿔주는 시스템’ 입니다.

예를 들어,

https://modoomo.net

이라는 주소는 실제로는

152.67.33.101

같은 숫자 IP를 가리킵니다.

DNS는 사용자가 도메인을 입력하면,
→ IP 주소를 찾아주는 “전화번호부” 역할을 하는 구조입니다.


DNS 요청의 흐름

브라우저에서 modoomo.net을 입력했을 때 일어나는 실제 과정 👇

1️⃣ 사용자 입력
사용자가 modoomo.net을 주소창에 입력

2️⃣ 로컬 캐시 확인
컴퓨터가 이전에 이 주소를 방문한 적이 있다면
로컬 DNS 캐시(임시 저장)에 저장된 IP를 사용

3️⃣ ISP(인터넷 서비스 제공자)의 DNS 서버로 요청
캐시에 없을 경우, KT·SK·LG 같은 통신사의 DNS 서버로 요청 전송

4️⃣ 루트 DNS → TLD 서버 → 권한 있는 네임서버
루트(.), TLD(.net), 권한 서버(modoomo.net 관리 서버) 순서로 찾아감

5️⃣ 결과 반환
modoomo.net의 IP 주소가 응답으로 돌아옴
브라우저가 해당 IP에 접속


DNS 레코드 종류 정리

타입역할예시
A도메인을 IPv4 주소로 연결modoomo.net → 152.67.33.101
AAAAIPv6 주소로 연결modoomo.net → 2400:cb00::1234
CNAME다른 도메인으로 별칭 연결www.modoomo.net → modoomo.net
MX메일 서버 설정mail.modoomo.net
TXT도메인 인증/보안용Google Search Console, SPF, DKIM 등
NS네임서버 지정ns1.cloudflare.com

네임서버(Name Server)의 역할

DNS 요청의 최종 결정을 내리는 곳이 바로 네임서버입니다.

도메인을 구입할 때
“네임서버를 Cloudflare로 변경하세요”
“호스팅사 네임서버를 사용하세요”
라고 하는 이유가 바로 이것입니다.

즉,

네임서버 = 내 도메인의 DNS 정보를 보관하고 응답해주는 서버


도메인 연결 실무 예시

예를 들어 blog.modoomo.net
AWS EC2 인스턴스(공인 IP 3.25.220.14)에 연결한다고 하면:

1️⃣ DNS 제공자(예: Cloudflare, 가비아 등)에서

A record
이름: blog
값: 3.25.220.14
TTL: Auto

2️⃣ 브라우저에서 blog.modoomo.net 입력 시
→ DNS 서버가 3.25.220.14 IP를 반환
→ EC2의 Nginx 또는 Apache로 접속
→ 워드프레스 사이트 표시

이렇게 연결됩니다.


CNAME과 A레코드의 차이

비교 항목A RecordCNAME Record
연결 대상IP 주소다른 도메인
예시blog.modoomo.net → 3.25.220.14www.modoomo.net → modoomo.net
용도서버 직접 연결서브도메인 리디렉션, 로드밸런싱
주의사항IP 변경 시 수동 수정 필요연결된 도메인이 자동 업데이트됨

실무에서는 기본 도메인(A레코드) + 서브도메인(CNAME) 조합을 많이 사용합니다.


TTL(Time To Live)이란?

TTL은 DNS 캐시가 유효한 시간(초 단위)입니다.

예를 들어 TTL = 3600이면
→ 1시간 동안은 DNS 서버가 IP를 캐싱해두고
→ 그 이후에 다시 새 IP를 조회합니다.

만약 서버 IP가 자주 바뀌는 환경이라면
TTL을 300(5분) 정도로 짧게 두는 것이 유리합니다.


Cloudflare로 DNS 관리하기

Cloudflare 같은 글로벌 DNS 서비스는
단순한 IP 연결 외에도 아래 기능을 제공합니다.

  • DNS + SSL 통합 관리
  • 보안 방화벽 (WAF)
  • Proxy 모드 (IP 숨기기)
  • 무료 CDN 캐시

즉, 단순히 “DNS 관리 도구”가 아니라
보안 + 성능 + 트래픽 최적화까지 포함된 프록시형 DNS 플랫폼입니다.


DNS 오류가 발생할 때 확인해야 할 것

현상원인해결 방법
도메인이 열리지 않음A레코드 누락DNS 레코드 추가 확인
IP 변경 후 접속 안 됨TTL 캐시 미갱신DNS TTL 낮추기 / DNS 플러시
특정 지역에서만 안 열림DNS 전파 지연dnschecker.org에서 전파 확인
HTTPS만 안 됨SSL 인증서 누락Let’s Encrypt / Cloudflare SSL 설정

마무리 — DNS는 모든 서버 연결의 출발점

정리하자면 👇

  • DNS는 ‘도메인 → IP 매핑 시스템’
  • A레코드가 실질적 연결의 핵심
  • CNAME은 별칭용, MX/TXT는 인증 및 메일용
  • 네임서버는 DNS 설정이 저장되는 최종 장소
  • Cloudflare나 AWS Route53으로 중앙 관리 추천