DNS 도메인 위임 개념 정리

DNS 도메인 위임 개념 정리입니다. 상위 zone, 하위 zone, NS, glue record, dig +trace, 위임 예시와 자주 나는 실수를 정리했습니다.

DNS 도메인 위임 개념 정리

DNS 도메인 위임은 상위 zone이 하위 zone의 권한 DNS 서버를 알려주는 구조다. 예를 들어 example.com의 상위는 .com이고, lab.example.com을 별도 DNS 서버에서 관리하려면 example.com zone 안에 lab.example.com의 NS record를 넣어 하위 zone으로 질의를 넘긴다.

개념글이므로 BIND 전체 구축 절차보다 delegation을 이해하는 데 필요한 record와 질의 흐름을 중심으로 정리한다.

위임이 필요한 경우

  • 조직의 하위 부서가 자체 DNS zone을 운영할 때
  • 내부 lab domain을 다른 DNS 서버에 맡길 때
  • 대규모 DNS zone을 역할별로 분리해 관리할 때
  • 권한 DNS 서버를 여러 위치로 나누어 운영할 때

핵심 record

record의미위치
NS이 zone을 담당하는 name server상위 zone과 하위 zone 모두
A/AAAAname server 이름의 IP 주소필요 시 glue record로 상위 zone에 둠
SOAzone의 시작 정보, serial, refresh 정책하위 zone 내부

예시 구조

상위 zone: example.com
하위 zone: lab.example.com

example.com DNS 서버:
 lab.example.com. NS ns1.lab.example.com.
 ns1.lab.example.com. A 192.168.10.192

lab.example.com DNS 서버:
 lab.example.com. SOA ns1.lab.example.com. admin.lab.example.com.
 lab.example.com. NS ns1.lab.example.com.
 web01.lab.example.com. A 192.168.10.193

glue record가 필요한 이유

하위 zone의 name server 이름이 그 하위 zone 안에 있을 때는 문제가 생긴다. 예를 들어 lab.example.com을 찾으려면 ns1.lab.example.com을 알아야 하는데, ns1.lab.example.com 자체가 lab.example.com 안에 있다. 이 순환을 풀기 위해 상위 zone이 name server의 IP도 같이 알려주는 것이 glue record다.

질의 흐름

  1. client가 resolver에게 web01.lab.example.com을 질의한다.
  2. resolver는 root, TLD, 상위 zone을 따라간다.
  3. example.com 권한 서버가 lab.example.com의 NS를 알려준다.
  4. 필요하면 glue A record로 ns1.lab.example.com의 IP를 함께 받는다.
  5. resolver가 ns1.lab.example.com에 최종 A record를 질의한다.

dig로 위임 확인

개념 확인에는 +trace가 가장 직관적이다.

dig web01.lab.example.com +trace
dig NS lab.example.com
dig A ns1.lab.example.com
dig @ns1.lab.example.com web01.lab.example.com A

상위 zone 예시

상위 zone 파일에 들어가는 delegation 예시는 다음과 같다.

lab IN NS ns1.lab.example.com.
ns1.lab IN A 192.168.10.192

여기서 ns1.lab의 A record가 glue 역할을 한다. name server가 ns1.otherdomain.test처럼 하위 zone 밖에 있다면 glue가 필요하지 않은 경우도 있다.

하위 zone 예시

$TTL 300
@ IN SOA ns1.lab.example.com. admin.lab.example.com. (
 2026062301
 3600
 900
 604800
 300 )
 IN NS ns1.lab.example.com.

ns1 IN A 192.168.10.192
web01 IN A 192.168.10.193

자주 나는 실수

실수결과
상위 zone에 NS만 있고 glue가 없음하위 name server 주소를 찾지 못할 수 있음
하위 zone SOA serial 미증가secondary나 cache가 변경을 늦게 반영
NS 이름 끝의 dot 누락상대 이름으로 붙어서 엉뚱한 FQDN 생성
방화벽 53/udp만 열고 53/tcp 누락큰 응답이나 zone transfer에서 문제 발생

마무리

DNS 위임은 하위 zone을 따로 운영할 수 있게 만드는 연결 지점이다. 상위 zone은 하위 zone의 NS를 알려주고, 하위 zone은 자기 내부 record를 책임진다. 위임 문제를 볼 때는 dig +trace로 어디에서 NS referral이 끊기는지 확인하면 된다.

문서 링크

BGM EVER