도메인 설정을 바꾼 뒤 "DNS 전파를 기다려야 한다"는 말을 자주 듣습니다. 하지만 이 표현은 실제 동작 원리를 정확히 담고 있지 않습니다. 이 글에서는 DNS 전파가 실제로 무엇인지, TTL이 어떤 역할을 하는지, 왜 반영까지 시간이 걸리는지, 그리고 지금 어떤 값이 실제로 응답되고 있는지 확인하는 방법을 설명합니다.
"DNS 전파"는 사실 캐시 만료다
많은 사람이 DNS 전파를 마치 변경 사항이 전 세계 서버로 물리적으로 퍼져나가는 이벤트처럼 생각합니다. 하지만 실제로는 그렇지 않습니다. 도메인의 권위 있는 네임서버(Authoritative Nameserver)에서 레코드를 바꾸면, 그 변경 사항은 사실 거의 즉시 반영됩니다. 문제는 그 사이에 있는 수많은 DNS 리졸버(캐싱 서버)들이 이전 값을 이미 캐시에 저장해두고 있다는 점입니다. ISP, 회사 네트워크, 공개 DNS(1.1.1.1, 8.8.8.8 등)마다 각자 캐시를 가지고 있고, 이 캐시가 만료되기 전까지는 예전 IP를 계속 돌려줍니다. 즉 "전파"라는 것은 어떤 신호가 퍼지는 과정이 아니라, 전 세계에 흩어진 캐시들이 각자의 타이밍에 맞춰 순차적으로 만료되고 새로 조회하는 과정일 뿐입니다.
TTL이 이 시간을 결정한다
이 캐시의 유효 기간을 결정하는 값이 TTL(Time To Live)입니다. TTL은 초 단위로 설정되며, 레코드를 처음 등록할 때 함께 지정합니다. 예를 들어 TTL이 3600이면 리졸버는 해당 레코드를 1시간 동안 캐시에 저장해 두고, 그 시간이 지나야 다시 권위 서버에 최신 값을 물어봅니다. TTL이 낮을수록(예: 300초 = 5분) 변경 사항이 빨리 반영되지만 권위 서버에 조회가 더 자주 발생하고, TTL이 높을수록(예: 86400초 = 24시간) 조회 부하는 줄지만 변경 반영은 느려집니다. 그래서 서버 이전처럼 예정된 변경이 있다면, 변경 며칠 전에 미리 TTL을 낮춰두는 것이 일반적인 실무 관행입니다. 다만 모든 리졸버가 TTL을 정직하게 지키는 것은 아니고, 일부는 최소 캐시 시간을 강제하기도 해서 실제로는 값이 조금 더 오래 남아있을 수 있습니다.
왜 최대 24~48시간이라고 하는가
실무에서 "DNS 반영에 최대 24~48시간이 걸릴 수 있다"고 안내하는 이유는, 변경 전 레코드의 TTL이 길게 설정되어 있었을 가능성과, 네임서버(NS) 레코드 자체를 바꾸는 경우(등록기관 이전 등)에는 상위 도메인(TLD) 서버의 캐시까지 영향을 받아 TTL이 더 길게(보통 최대 48시간) 잡혀 있는 경우를 함께 고려하기 때문입니다. 예를 들어 A 레코드 TTL을 300초로 낮춰뒀다면 대부분의 리졸버는 5분 안에 새 값을 반영하지만, 일부 네트워크의 캐시나 사용자의 로컬 DNS 캐시, 브라우저 캐시까지 겹치면 체감상 더 오래 걸릴 수 있습니다.
지금 어떤 값이 나오는지 직접 확인하기
기다리는 대신, 지금 이 순간 특정 DNS 서버가 어떤 값을 돌려주는지 직접 조회해보는 것이 가장 확실합니다. A, AAAA, NS, MX, TXT 등 원하는 레코드 타입을 골라 조회하면 현재 반영된 값과 남은 TTL을 바로 확인할 수 있어, 막연히 기다리는 대신 실제 진행 상황을 파악할 수 있습니다.
🛰️ 이 작업, 도구로 바로 해보세요
DNS 전파 확인하는 방법 (TTL이란?) — 네임서버 변경 후 전파 여부와 TTL 개념 정리