1. 도메인의 TTL
- TTL은 Time To Live의 약자로 도메인을 캐싱하고 있는 시간을 의미
- 누군가 A라는 도메인에 대해 질의를 했다면 응답을 준 DNS 서버에서 해당 도메인에 대해 TTL 시간 동안 캐싱을 함
- 같은 도메인을 여러 사람이 질의할 수 있기 때문에 한 번 질의한 내용을 캐싱하고 있는 게 불필요한 동작을 방지 가능
- www.kakao.com에 대한 도메인 질의 결과 → 리눅스에서는 간단하게 dig 명령으로 TTL 시간 확인 가능
- TTL 시간을 의미(1번 항목)
- 질의한 도메인에 대해 DNS 서버가 해당 도메인을 캐싱하는 시간
- 531초 동안 캐싱하고 있을 거라는 것을 알 수 있음
- www.kakao.com에 대한 도메인 질의 결과를 내려준 서버를 의미(2번 항목)
- 모든 DNS 서버가 모든 도메인에 대해 알고 있을 수 없기 때문에 본인이 관리하는 도메인이 아니라면 상위 DNS 서버에 질의함
- www.kakao.com 도메인을 관리하는 서버를 찾게 되고, www.kakao.com 도메인을 관리하는 서버가 ns2.iwilab.com임을 의미
- 현재 자신이 사용하고 있는 DNS 서버를 의미(3번 항목)
- 도메인 질의 과정을 유추해 보면 www.kakao.com에 대한 도메인 질의를 10.20.30.60에 먼저 질의
- 10.20.30.60은 자신이 관리하는 도메인이 아니기 때문에 상위 DNS 서버에 요청해서 해당 도메인을 관리하는 DNS 서버를 찾게 되고 결과적으로 ns2.iwilab.com 서버에 질의해서 결과를 받아오게 됨
- TTL 시간을 의미(1번 항목)
2. TTL이 0이 되면?
- TTL이 0이 되면, DNS 서버는 도메인에 대한 질의 요청에 대해 사용자에게 응답해 주었지만, TTL이 0이 되기 때문에 캐싱하지 않고 바로 버림
- 다른 사용자가 똑같은 도메인을 요청했을 경우, 상위 DNS 서버를 찾아서 해당 도메인에 대한 질의 결과를 받아오는 작업을 진행
- TTL이 0인 도메인이 많은 경우, 상위 DNS로의 요청이 많아지고 전체적으로 도메인 질의 요청을 처리하는 데에 많은 시간이 소요되게 됨
- 하지만 TTL이 0이면, 매 요청마다 해당 도메인을 관리하고 있는 DNS 서버를 직접 찾아서 질의하기 때문에 최신의 정확한 정보를 가지게 됨
- TTL이 0이면, 도메인 요청에 걸리는 시간은 늘어나지만 도메인 변경 등에 대한 대응은 정확하고 빠르게 할 수 있다는 장점이 있음
참고 자료
'GTM과 DNS' 카테고리의 다른 글
Bind DNS recursion 설정 (0) | 2023.09.16 |
---|---|
Extension DNS(EDNS0)란 (0) | 2023.09.16 |
DNS 응답 코드와 의미 (0) | 2023.09.16 |
DNS TXT Record(DNS 텍스트 레코드) (0) | 2023.09.16 |
DNS NS(Name server) 레코드 → NS 레코드는 권한있는 DNS 서버를 나타냄 (0) | 2023.09.16 |