루트, TLD, 도메인, 서브도메인으로 위임됩니다. 각 단계는 다음 질의를 보낼 권한 서버 주소를 돌려줍니다.
DNS 조회 흐름
DNS는 도메인 이름을 IP 주소 등 레코드로 해석하는 분산 데이터베이스입니다. 클라이언트는 보통 재귀 리졸버에 묻고, 리졸버가 권한 서버를 따라갑니다.
stub resolver는 OS 쪽 질의자이고, recursive resolver는 대리 조회와 캐시를 수행하며, authoritative server는 zone의 답을 가집니다.
재귀 질의는 끝까지 찾아오는 방식이고, 반복 질의는 다음 권한 서버를 전달하는 방식입니다.
브라우저, OS, hosts 파일, 재귀 리졸버가 서로 다른 순서와 TTL로 답을 저장할 수 있습니다.
hosts file
로컬 override는 DNS 서버 질의보다 먼저 적용되어 예상과 다른 IP를 만들 수 있습니다.
TTL cache
레코드 변경 후에도 TTL이 남은 캐시는 이전 답을 계속 줄 수 있습니다.
Authority
리졸버와 권한 서버를 구분해야 캐시 문제와 zone 설정 문제를 분리합니다.