네임서버를 Cloudflare로 옮긴 뒤 특정 호스트가 NXDOMAIN으로 조용히 죽는다
배포 · 인프라
증상
레지스트라에서 네임서버를 Cloudflare로 넘긴 뒤, 어느 시점부터 특정 호스트가 NXDOMAIN. 에러가 아니라 "이름이 없다"라 모니터링에 안 잡히고, 그 호스트를 거치는 외부 API 호출이 전면 중단된다. 별개로, 호스팅 패널에서 MX를 추가했는데 30분을 기다려도 메일이 안 온다.
원인
- Cloudflare Email Routing·Workers·프록시는 존의 네임서버가 Cloudflare여야 동작하므로 레코드 복사가 아니라 NS를 통째로 넘겨야 한다. 이때 Cloudflare가 기존 레코드를 스캔해 자동 임포트하지만 전량 보장이 아니다. 누락된 레코드는 NS 전파가 끝나는 시점(수 분~48시간)에 조용히 사라진다.
- 권위 네임서버가 Cloudflare로 바뀐 뒤에는 호스팅 패널의 존 편집기가 더 이상 권위가 아니다. 거기서 추가한 MX·A 레코드는 무시된다.
- 메일 릴레이·MX 대상이 가리키는 A 레코드에 프록시(주황 구름) 가 켜져 있으면 메일이 안 온다. DNS 전용(회색 구름) 이어야 한다.
해법
- NS 이전 전에 기존 존 전체를
dig로 덤프해 파일로 남긴다. 이전 후 대조해 누락분을 Cloudflare 대시보드에 직접 넣는다. - 레코드 편집은 Cloudflare 대시보드에서만 한다. 패널에서 고쳤는데 안 잡히면 이걸 먼저 의심한다.
- 릴레이·API가 물린 존은 가급적 NS를 옮기지 않는다. 메일은 별도 존으로 뺀다.
검증
dig @<권위 NS> <호스트> A로 권위 서버에 직접 묻고, 그 다음 릴레이 경로로 실제 API 왕복 1회를 친다. ping이 아니라 실호출이다.
★ 네임서버를 옮긴 순간, 어제까지 편집하던 화면은 더 이상 아무것도 바꾸지 못한다.