Cloudflare가 사설(내부)·공인 DNS 해석을 하나의 플랫폼으로 통합하는 Internal DNS를 정식 출시했다. 기존에는 공인 DNS·내부 DNS·클라우드별 DNS가 제각기 다른 보안 정책으로 흩어져 공통 컨트롤 플레인이 없었고, split-horizon 구성은 병렬 시스템을 수동 동기화하다 drift로 장애를 냈다. 새 제품은 단일 API·감사 로그·정책 계층으로 이를 합치고, 1.1.1.1 인프라 위에서 하드웨어 없이 동작하며 Enterprise는 Gateway에 무료 포함된다.
핵심 포인트- 공인·사설 DNS를 하나의 컨트롤 플레인으로 통합해 단일 API·감사 로그·정책 계층에서 관리한다.
- Gateway Resolver가 1.1.1.1 기반으로 재귀 해석과 정책 평가를 맡고, Internal Authoritative DNS가 내부 존의 권한 레코드를 서빙한다.
- Internal Zones·DNS Views·Resolver Policies 세 객체로 split-horizon을 병렬 시스템 없이 구현한다.
- 변경은 통합 DNS Records API로 들어가 글로벌 네트워크에 전파되며 TTL 만료를 안 기다리고 수 초 내 반영된다.
- Cloudflare One Client·DoH·DoT·53번 포트·PAC·Cloudflare WAN으로 접근해 Zero Trust를 DNS까지 확장한다.
상세 정리- 문제: 공인 DNS는 한 플랫폼, 내부 DNS는 다른 플랫폼, 클라우드 안은 클라우드 네이티브 DNS로 나뉘고 보안 정책이 따로 얹혀 공통 컨트롤 플레인이 없었다.
- split-horizon 고통: 같은 이름을 내부·외부에 다르게 응답하려면 병렬 시스템을 동기화해야 했고, 시간이 지나며 drift가 생겨 장애로 이어졌다.
- Gateway Resolver: 재귀 해석과 정책 평가를 담당하고, 표현식 기반 정책 엔진으로 쿼리를 필터링하거나 상위 소스로 리다이렉트한다.
- Internal Authoritative DNS: 10년 넘은 Cloudflare 권한 DNS 플랫폼으로 내부 존 레코드를 서빙한다.
- 세 객체 구조: Internal Zones는 사설 리소스의 권한 레코드를 담고, DNS Views는 존을 특정 사용자·디바이스 집합의 해석 컨텍스트로 묶으며, Resolver Policies는 매칭 쿼리를 뷰로 라우팅한다.
- 존 재사용: 공유 존을 여러 뷰에서 참조로 재사용해 중복과 drift를 막는다.
- 해석 흐름: 쿼리는 먼저 Gateway Resolver에서 정책 평가를 받고, 매칭되면 Internal Authoritative DNS로, 차단이면 드롭, 미매칭이면 1.1.1.1 공인 경로로 간다. 뷰는 내부에서 못 찾으면 공인 해석으로 폴백할 수 있다.
- 변경 전파: 대시보드·Terraform·API가 같은 DNS Records API로 들어가 코어 데이터센터에 저장된 뒤 글로벌 네트워크로 복제되고 캐시 무효화까지 처리해 수 초 내 반영된다.
- 통합 지점: Cloudflare One Client(구 WARP)·DoH·DoT·53번 포트·PAC 배포·Cloudflare WAN을 지원하고, WAN에 연결된 기기는 개별 클라이언트 설치 없이 내부 호스트명을 해석한다.
- 설정 절차: 내부 존 생성(type internal, 예 corp.internal) → DNS 레코드 추가(예 db.corp.internal → 10.0.1.50, TTL 300) → DNS View 생성으로 존 연결 → Zero Trust 대시보드에서 Gateway Resolver 정책 생성, IaC는 Terraform으로 처리한다.
- 하드웨어 은퇴: 1.1.1.1 인프라 위에서 돌아 랙에 장비를 넣거나 용량을 프로비저닝할 필요 없이 어플라이언스·레거시 서버를 대체한다.
왜 읽나사내 DNS·split-horizon·Zero Trust 네트워크를 운영하며 어플라이언스 통합을 고민하는 인프라·네트워크·플랫폼 엔지니어에게 유용하다.