DNS 암호화 프로토콜 비교: DoT, DoH, DoQ

Plain DNS, DoT, DoH, DoQ의 레이어 관계, 포트, 성능 차이 및 적용 시나리오를 정리하고, 실제 선택 및 설정을 위한 권장 사항을 제공합니다.

약어 빠른 정리

  • Plain DNS: 평문 DNS, 기본 UDP/53 사용, 필요 시 TCP/53 사용(응답 절단, 영역 전송 등).
  • DoT: DNS over TLS, TLS 기반 TCP 사용, 기본 포트 853(RFC 7858/8310).
  • DoH: DNS over HTTPS, HTTPS(HTTP/2 혹은 HTTP/3) 기반, 기본 포트 443(RFC 8484).
  • DoQ: DNS over QUIC, QUIC + TLS 1.3 기반, 기본 포트 UDP/853(RFC 9250, IANA에서 853/udp 할당).

레이어 관계(간단 TCP/IP 모델)

  • 애플리케이션 레이어: HTTP, HTTPS, DNS(DoH는 HTTPS 애플리케이션 레이어 래핑에 포함).
  • 보안 레이어: TLS(TCP 혹은 QUIC에 암호화 제공).
  • 전송 레이어: TCP, UDP, QUIC.
  • 네트워크 레이어: IP.
  • 링크 레이어: 이더넷 등.
  • 물리 레이어: Twisted pair/광섬유/무선 등.

핵심 포인트

  • Plain DNS는 UDP/TCP 위에서 작동하며 암호화되지 않음.
  • DoT = TCP + TLS + DNS(전용 포트 853).
  • DoH = TCP/QUIC + TLS + HTTP(S) + DNS(443 포트 사용, 일반 HTTPS와 포트 공유).
  • DoQ = QUIC + TLS 1.3 + DNS(전용 포트 UDP/853).
graph TB
    subgraph 애플리케이션 레이어
        A[HTTP]
        A2[HTTPS]
        C[DNS]
        D[DoH DNS over HTTPS]
    end

    subgraph 보안 레이어
        E[TLS]
    end

    subgraph 전송 레이어
        F[TCP]
        G[UDP]
        H[QUIC]
    end

    subgraph 네트워크 레이어
        I[IP]
    end

    subgraph 링크 레이어
        J[Ethernet]
    end

    subgraph 물리 레이어
        K[Twisted pair/광섬유/무선]
    end

    A2 --> F
    A2 --> H
    A --> F
    C --> F
    C --> G
    D --> A2
    E --> F
    E --> H
    F --> I
    G --> I
    H --> I
    I --> J
    J --> K

    style D fill:#e1f5fe
    style E fill:#fff3e0

기본 지식 및 오류 교정

  • Plain DNS 기본 UDP/53 사용, 응답 절단(TC 비트) 혹은 신뢰성 전송 필요 시 TCP/53로 전환.
  • DoT는 TCP 위에서 TLS 터널을 구축해 DNS 메시지 전송, 기본 포트 853; 긴 연결 재사용으로 핸드셰이크 오버헤드 감소 가능.
  • DoH는 DNS를 HTTPS의 리소스(application/dns-message)로 래핑, 일반적으로 HTTP/2 혹은 HTTP/3 사용, 포트 443, 일반 HTTPS와 혼동되기 쉬움.
  • DoQ는 직접 QUIC(UDP 기반)로 DNS 전달, 낮은 지연과 Head-of-line blocking 방지 장점, 현재 생태계 커버리지는 성장 중.
  • “QUIC이 무조건 TCP보다 X% 빠르다"는 일반화된 결론은 정확하지 않음; 실제 성능은 네트워크 상태(패킷 손실, 지터, RTT), 연결 재사용 여부, 구현 세부사항 및 서버 배포와 관련.
  • DoH가 “DNS를 HTTP에 넣으면 무조건 느리다/빠르다"는 주장도 정확하지 않음; 성능은 연결 재사용, 네트워크 품질, 구현에 따라 달라지며, 많은 경우 DoH/3와 DoT 체감 차이가 적거나 더 나을 수 있음.
  • DoT는 SNI로 인증서 호스트명 검증 가능; DoH는 HTTPS의 일반 인증서 검증과 호스트명 매칭에 의존.
  • 암호화 DNS는 경로상의 도청·변조만 방지하며 “완전 익명"을 의미하지 않음. Resolver는 여전히 쿼리를 기록할 수 있음; 신뢰할 수 있는 제공업체를 선택하고 개인정보 정책을 확인하세요.
graph TD
    subgraph DNS 패밀리
        A[Plain DNS UDP/TCP + DNS]

        subgraph 암호화된 DNS
            B[DoT TCP + TLS + DNS]
            C[DoH HTTP/2,3 + TLS + DNS]
            D[DoQ QUIC + TLS 1.3 + DNS]
        end

        subgraph 전송 베이스
            E[TCP]
            F[UDP]
            G[QUIC]
        end
    end

    A --> B
    A --> C
    A --> D

    B --> E
    C --> E
    C --> G
    D --> G
    A --> F

    style A fill:#f3e5f5
    style B fill:#e8f5e8
    style C fill:#e3f2fd
    style D fill:#fff3e0

대조 개요

프로토콜 전송 레이어 암호화 래핑 기본 포트 주요 특징
Plain DNS UDP/TCP 없음 DNS 원생 53 간단 효율적, 평문 노출, 변조·검열 위험
DoT TCP TLS 1.2/1.3 DNS 853 전용 포트, 포트 차단 위험, 시스템 지원 우수
DoH TCP/QUIC TLS 1.2/1.3 HTTP/2-3 + DNS 443 HTTPS와 포트 공유, 우수한 통과성, 브라우저 우선 지원
DoQ QUIC TLS 1.3 DNS 853/UDP 낮은 지연, Head-of-line blocking 방지, 생태계 성장 중

성능 및 지연

  • 연결 재사용: DoT/DoH/DoQ 모두 긴 연결 재사용으로 핸드셰이크 비용 절감 가능; DoH/2, DoH/3, DoQ는 단일 연결 내 다중화 지원.
  • Head-of-line blocking: TCP는 애플리케이션 레벨 HOL 문제 존재; HTTP/2는 TCP 위에서 다중화로 완화하지만 여전히 TCP 패킷 손실 영향을 받음, QUIC(DoH/3, DoQ)는 전송 레벨에서 HOL 방지, 높은 패킷 손실/모바일 네트워크에 유리.
  • 초기 패킷 지연: 첫 연결 시 DoT는 TCP+TLS 핸드셰이크 필요; DoH/2 유사; DoH/3/DoQ는 QUIC 기반이라 재연결·이동이 빠름. 장기 로드에서는 구현 및 네트워크 조건에 더 크게 좌우됨.
  • 접근성: DoH는 포트 443 사용으로 단순 포트 차단에 가장 저항력; DoT는 853 포트 사용으로 종종 차단; DoQ는 853/UDP 사용, 현재 단계에서도 차단 혹은 허용되지 않을 수 있음.

클라이언트 및 시스템 지원

  • 브라우저: Chromium 계열 및 Firefox는 기본 DoH 지원(자동으로 DoH 지원 Resolver로 업그레이드 혹은 내장 제공업체 목록 사용 가능).
  • Windows: Windows 11는 기본 DoH 지원.
  • Android: Android 9+는 “Private DNS”(시스템 레벨 DoT) 제공. 시스템 레벨 DoH 지원은 버전/제조사에 따라 다름.
  • Apple 플랫폼: iOS 14+/macOS 11+는 설명 파일 혹은 NetworkExtension으로 DoT/DoH 지원.

배포 및 선택 권장

  • 일반/제한된 네트워크(공공 Wi‑Fi, 단순 차단 우회 필요): DoH(포트 443) 우선, HTTP/3 활성화 권장.
  • 시스템 레벨 통합 업스트림(라우터, 게이트웨이, Android Private DNS): DoT(853) 우선, 네트워크 허용 시 DoH(443)를 대체로 추가.
  • 높은 패킷 손실/모바일 네트워크: Resolver 및 클라이언트 지원 시 QUIC 기반 DoH/3 혹은 DoQ 우선.
  • 기업/규제 시나리오: 정책에 따라 선택(DoH는 기존 HTTPS 인프라와 융합 가능; DoT는 DNS 제어면과 분리하기 용이).

요약

  • DoH(443, 통과성 우수)를 우선 선택하고, 가능하면 HTTP/3 활성화.
  • 시스템 레벨 통합이 필요하면 DoT(853)+지속 연결을 우선하고, 필요 시 DoH(443)를 대체로 사용.
  • Resolver와 클라이언트가 모두 지원한다면 DoQ(모바일 환경에서 종종 더 좋은 체감) 시도.

참조 표준

  • RFC 7858, RFC 8310(DNS over TLS)
  • RFC 8484(DNS over HTTPS)
  • RFC 9250(DNS over QUIC)

DNS 서비스 권장