// 무료 도구 · DNS TTL 계산

DNS TTL 계산기 · 변환기

TTL을 넣으면 그 초가 몇 시간 몇 분인지에 더해, 실제로 필요한 순서가 나옵니다. 네임서버나 서버를 옮기기 전에 레코드 TTL을 300초로 낮추되, 전환보다 얼마나 앞서 낮춰야 하는지는 지금 걸려 있는 TTL이 정합니다. 그리고 NXDOMAIN이 이미 나가고 있다면 RFC 2308 네거티브 캐시까지 계산합니다 — 고친 뒤에도 장애가 더 오래 가는 이유가 그것입니다. 계산은 전부 이 브라우저 안에서 일어나고, 입력한 값은 어디로도 전송되지 않습니다.

무료즉시가입 불필요브라우저에서 실행

다른 언어:EnglishDeutsch日本語EspañolFrançais한국어繁體中文Português (Brasil)

dns · ttl 계산

초, 또는 기간 표기: 3600 / 1h / 90min / 1d 12h / 04:00:00. 1주일을 넘는 값은 받지 않습니다.

자주 쓰는 값 — 누르면 입력됩니다:

전환 작업 동안만 쓰는 낮은 TTL입니다. 300초가 정석이고, 60 아래로 내려가면 질의만 늘고 얻는 것은 없습니다.

둘 다 NXDOMAIN 응답의 authority 섹션 SOA에 들어 있습니다: dig SOA example.kr. RFC 2308은 둘 중 작은 값을 씁니다. 기본값은 .kr 레지스트리에서 실측한 900입니다.

결과

          

TTL 계산기 사용법

입력란은 세 개, 계정은 필요 없고, 계산은 전부 이 자리에서 일어납니다. 넣은 값은 어디로도 전송되지 않습니다.

  1. 지금 걸린 TTL을 넣습니다. 앞으로 바꿀 레코드에 설정된 TTL을 초나 1h 같은 표기로 넣습니다. 읽을 수 있는 시간으로의 환산과, 그것이 전환용·균형·안정 중 어디에 해당하는지가 나옵니다.
  2. 변경 순서를 읽습니다. 작업 중에 쓸 낮은 TTL, 그것을 몇 시간 전에 내보내야 하는지, 전환 뒤 캐시가 따라오기까지 걸리는 시간, 그리고 끝난 뒤 되돌릴 값이 차례로 나옵니다.
  3. NXDOMAIN이 나오고 있다면 SOA 숫자도 넣습니다. dig SOA example.kr 를 실행해 minimum 필드와 SOA 레코드 자신의 TTL을 넣으면, RFC 2308 네거티브 캐시 시간 — 고친 뒤 몇 분·몇 시간 동안 그 부정이 남는지 — 이 나옵니다.

네임서버 변경: 언제 낮추고 언제 전환하는가

순서 자체는 짧습니다. 어려운 부분은 얼마나 앞서 낮추느냐이고, 그 답은 지금 걸려 있는 TTL이 정합니다.

  1. 먼저 TTL을 낮춥니다. 옮길 레코드의 TTL을 300초로 바꿉니다. 아직 아무것도 옮기지 않습니다.
  2. 기존 TTL만큼 기다립니다. 이미 3600으로 캐시해 간 리졸버는 그 한 시간이 끝나야 새 값을 다시 물어봅니다. 안전하게 가려면 두 배를 기다립니다.
  3. 그다음에 전환합니다. 이 시점에서 모두가 300초짜리를 들고 있으므로, 실제 전환은 5분 안에 따라옵니다.
  4. 안정되면 되돌립니다. 3600이나 14400으로 올려 둡니다. 300을 그대로 두면 질의만 늘어납니다.

여기서 자주 나오는 오해가 하나 있습니다. TTL을 낮추는 것은 전환을 빠르게 만들지 않습니다. 낮추는 시점이 전환보다 충분히 앞서야만 빨라집니다. 전환 당일 아침에 낮추면, 캐시는 여전히 어제의 긴 TTL로 돌아갑니다.

「DNS 반영 시간」을 그만두고 실제로 보는 두 숫자

한국어로 이 문제를 검색하면 거의 항상 「DNS 반영 시간」이라는 한 단어가 나옵니다. 그런데 그 한 단어가 길이가 전혀 다른 두 개의 지연을 덮고 있습니다. 둘을 갈라 놓으면 기다려야 할 시간이 정확해집니다.

아래 숫자는 2026년 9월 5일에 .kr 권위 서버에 직접 물어서 읽은 값입니다. 관리 화면에 적혀 있는 안내가 아니라 실제 응답입니다.

지연실측값내가 바꿀 수 있나
.kr 위임 NS의 TTL86400초 = 24시간불가능 — 레지스트리가 정합니다
.kr 네거티브 캐시900초 = 15분불가능 — 다만 짧습니다
내 레코드의 TTL내가 설정한 값가능 — 낮출 수 있는 것은 이것뿐

직접 다시 계산해 볼 수 있습니다.

$ dig @c.dns.kr NS naver.kr +noall +authority +answer
naver.kr.  86400  IN  NS  ns1.naver.com.

$ dig @c.dns.kr A zzz-nx-test.kr
kr.  900  IN  SOA  g.dns.kr. ... 3600 900 604800 900

읽는 법은 이렇습니다. 첫 번째 응답의 86400네임서버를 바꿨을 때 걸리는 시간입니다. 리졸버가 「이 도메인의 네임서버는 누구인가」를 이미 캐시해 갔다면, 그 답은 24시간 동안 유효합니다. 내 쪽에서 아무리 TTL을 낮춰도 이 구간은 줄지 않습니다 — 애초에 리졸버가 내 네임서버에 물어보지도 않으니까요.

두 번째 응답 마지막 줄의 두 숫자가 네거티브 캐시입니다. SOA 레코드 자신의 TTL이 900, minimum 필드도 900이므로 RFC 2308에 따라 작은 쪽인 900초가 적용됩니다. 도메인이 존재하지 않는다는 답을 받아 간 리졸버는, 위임을 고친 뒤에도 15분 동안 그 부정을 그대로 돌려줍니다.

96배 차이입니다. 「반영 시간」이라는 한 단어로 24시간과 15분을 동시에 가리키고 있었던 것입니다. 네임서버를 바꿨다면 최대 하루를 봐야 하고, 위임이 잠깐 깨졌다가 복구된 것이라면 15분이면 끝납니다. 어느 쪽인지는 dig 한 번으로 갈립니다.

국내 호스팅 업체가 자기 존에서 실제로 돌려주는 값

2026년 9월 5일, 각 업체의 권위 서버에 직접 물어 자사 도메인의 A 레코드 TTL을 읽은 값입니다. 관리 화면의 기본값과는 다른 것이니 주의하세요 — 이건 그들이 실제로 내보내고 있는 숫자입니다.

업체자사 존의 A 레코드 TTL
가비아 (gabia.com)30초
닷홈 (dothome.co.kr)60초
호스팅케이알 (hosting.kr)60초
카페24 (cafe24.com)300초
스마일서브 (smileserv.com)600초

다섯 곳 모두 자기 사이트에는 짧은 TTL을 씁니다. 언제든 옮길 수 있게 해 두는 것이죠. 고객 존의 기본값이 이것과 같다는 뜻은 아니니, 내 도메인 값은 직접 확인하세요.

네거티브 캐시 계산: 고친 순간에 낫지 않는 이유

도메인이 잠깐이라도 존재하지 않는 상태가 되면 — 위임이 깨졌거나, 레코드를 지웠거나, 이전 중 공백이 생겼거나 — 그 사이에 물어본 리졸버는 「없음」이라는 답을 캐시합니다. 그리고 그 캐시의 수명은 내 레코드의 TTL이 아니라 SOA가 정합니다.

RFC 2308의 규칙은 min(SOA의 minimum 필드, SOA 레코드 자신의 TTL)입니다. minimum만 읽으면 틀립니다 — 두 값이 다른 존이 실제로 많고, 그때는 작은 쪽이 이깁니다.

$ dig SOA example.kr +noall +authority

이것이 장애가 복구보다 늦게 끝나는 이유입니다. 위임을 고쳤는데도 일부 사용자에게는 여전히 안 보인다면, 대개 고장이 아니라 네거티브 캐시가 남아 있는 것입니다. .kr이라면 15분입니다.

자주 보는 TTL 값과 각각의 용도

TTL시간언제 쓰나
601분장애 대응 중. 상시로 두면 질의 비용만 늘어납니다
3005분전환용 표준값. 이전 작업 동안만
90015분자주 바뀌는 레코드. .kr 네거티브 캐시와 같은 길이
36001시간균형점. 대부분의 레코드 기본값
144004시간안정된 레코드. MX처럼 잘 안 바뀌는 것
8640024시간거의 움직이지 않는 레코드. .kr 위임 NS의 TTL과 같은 값
17280048시간.com 위임 NS의 TTL. 「24~48시간」 이야기의 출처는 여기입니다

마지막 줄이 중요합니다. 인터넷에 널리 퍼져 있는 「DNS 변경은 24~48시간」이라는 말은 .com의 172800에서 나온 숫자이지 .kr의 숫자가 아닙니다. .kr은 그 절반인 86400입니다.

// 자주 묻는 질문

네임서버를 바꾸기 전에 TTL은 얼마로 해야 하나요?

옮길 레코드의 TTL을 300초로 낮추고, 지금 걸려 있는 TTL만큼(안전하게는 그 두 배만큼) 기다린 뒤에 전환하세요. 3600이 걸려 있었다면 전환 최소 한 시간 전, 안전하게는 두 시간 전에 낮춰야 합니다. 전환 당일 아침에 낮추면 캐시는 여전히 어제의 긴 TTL로 돌아갑니다. 안정된 뒤에는 3600이나 14400으로 되돌리세요.

TTL 3600은 몇 시간인가요?

3600초는 정확히 1시간입니다. 이 값이 걸린 레코드를 캐시해 간 리졸버는 최대 한 시간 동안 다시 물어보지 않습니다. 그래서 변경을 계획할 때는 그 한 시간을 전환보다 앞에 두어야 합니다.

.kr 도메인의 네임서버 변경은 얼마나 걸리나요?

2026년 9월 5일 .kr 권위 서버에 직접 물어 확인한 값으로, .kr 위임 NS의 TTL은 86400초, 즉 24시간입니다. 이미 위임을 캐시해 간 리졸버는 최대 하루 동안 예전 네임서버를 계속 씁니다. 이 구간은 내 레코드 TTL을 아무리 낮춰도 줄지 않습니다. 흔히 인용되는 "24~48시간"의 뒷쪽 숫자는 .com의 172800초에서 온 것이고 .kr에는 해당하지 않습니다.

네거티브 캐시 TTL은 어떻게 계산하나요?

RFC 2308에 따라 min(SOA의 minimum 필드, SOA 레코드 자신의 TTL)입니다. minimum만 읽으면 틀리는 존이 실제로 많습니다. dig SOA example.kr 로 두 값을 확인하세요. .kr 레지스트리는 둘 다 900이라 네거티브 캐시가 900초, 즉 15분입니다.

TTL을 낮추면 전환이 빨라지나요?

낮추는 시점이 전환보다 충분히 앞설 때만 빨라집니다. TTL은 이미 캐시된 답에는 소급되지 않기 때문입니다. 그리고 네임서버 자체를 바꾸는 경우에는 위임 TTL이 따로 걸려 있어서, .kr에서는 24시간이 내 통제 밖에 있습니다.

TTL을 아주 짧게 두면 안 되나요?

60초 아래로 내려가면 질의만 늘고 얻는 것은 거의 없습니다. 장애 대응 중이나 이전 작업 중처럼 몇 시간 동안이라면 타당하지만, 상시로 두면 리졸버가 계속 되물어 오고 응답 지연도 늘어납니다. 끝난 뒤에는 되돌리세요.

clize domain check — 설정한 TTL이 아니라, 돌아오는 TTL을 읽습니다

의미가 있는 것은 응답에 붙어 있는 TTL 쪽입니다.

명령 하나로 두 계열의 공개 리졸버에서 도메인을 읽고, 각 레코드의 남은 TTL을 보여 줍니다. 이어서 존, 호스트명 배정, 실제로 서빙되고 있는 내용까지 확인합니다.

$ npm i -g @clize/clize && clize install
$ clize domain check example.kr
[ Agent Domains → ]