DoH/DoT란? 암호화 DNS의 원리와 설정법
DoH/DoT란? 암호화 DNS의 원리와 설정법
인터넷을 사용할 때 가장 먼저 일어나는 일은 DNS 쿼리입니다. 브라우저에 도메인을 입력하면 DNS 서버가 해당 도메인의 IP 주소를 알려주는데, 이 과정이 평문(plaintext) 으로 전송된다는 사실을 알고 계셨나요? 이 글에서는 DNS 쿼리를 암호화하는 두 가지 프로토콜, DoH와 DoT의 원리와 설정 방법을 알아봅니다.
기존 DNS의 보안 문제
전통적인 DNS는 UDP 53번 포트를 통해 평문으로 통신합니다. 이로 인해 다음과 같은 보안 위협에 노출됩니다.
- 트래픽 감청: 같은 네트워크의 누구나 사용자가 방문하는 도메인을 엿볼 수 있습니다. 카페 Wi-Fi나 공공 네트워크에서 특히 위험합니다.
- DNS 스푸핑(Spoofing): 공격자가 위조된 DNS 응답을 보내 사용자를 피싱 사이트로 유도할 수 있습니다.
- ISP 기록: 인터넷 서비스 제공업체가 사용자의 전체 방문 기록을 수집하고 저장할 수 있습니다.
이러한 문제를 해결하기 위해 등장한 것이 DoH와 DoT입니다. DNS의 기본 동작 원리가 궁금하다면, DNS 동작 원리 글을 먼저 참고하세요.
DoH(DNS over HTTPS)란
DoH는 DNS 쿼리를 HTTPS 프로토콜(포트 443) 위에 실어 보내는 방식입니다. 일반 웹 트래픽과 동일한 포트와 암호화를 사용하므로, 네트워크 관찰자 입장에서 DNS 쿼리와 일반 웹 요청을 구분하기 어렵습니다.
https://cloudflare-dns.com/dns-query?name=example.com&type=A
DoH 요청은 위와 같이 표준 HTTPS GET/POST 요청으로 전송됩니다. 응답은 application/dns-message 형식으로 반환되며, TLS 1.3으로 암호화됩니다. 기존 HTTPS 인프라를 그대로 활용하기 때문에 도입 장벽이 낮고, 방화벽에서 차단하기 어렵다는 것이 핵심 장점입니다.
DoT(DNS over TLS)란
DoT는 DNS 쿼리를 TLS 암호화(포트 853) 로 감싸는 방식입니다. DoH와 달리 전용 포트를 사용하므로 네트워크 관리자가 DNS 트래픽임을 명확히 식별할 수 있습니다.
DoT는 기존 DNS 메시지 형식을 그대로 유지하면서 전송 계층만 암호화합니다. 프로토콜 구조가 단순하여 구현이 비교적 쉽고, DNS 트래픽에 대한 정책 적용이 가능합니다.
DoH vs DoT 비교
| 항목 | DoH | DoT |
|---|---|---|
| 포트 | 443 (HTTPS) | 853 (전용) |
| 차단 가능성 | 낮음 (웹 트래픽과 혼합) | 높음 (전용 포트 차단 용이) |
| 브라우저 지원 | Chrome, Firefox, Edge, Safari | 제한적 |
| OS 지원 | Windows 11, macOS, iOS, Android | Android 9+, iOS 14+ |
| 성능 | HTTP/2 멀티플렉싱 활용 | TCP 핸드셰이크 필요 |
| 네트워크 관리 | 식별 어려움 | 식별 및 정책 적용 가능 |
DoH 설정 방법: 브라우저별 가이드
Chrome
- 주소창에
chrome://settings/security입력 - 보안 DNS 사용 항목을 활성화
- 제공업체를 Cloudflare(
1.1.1.1) 또는 Google(8.8.8.8)로 선택
Firefox
- 설정 > 개인 정보 및 보안 > DNS over HTTPS 이동
- 최대 보호 또는 기본 보호 선택
- 제공업체를 Cloudflare 또는 사용자 지정 URL로 설정
Edge
edge://settings/privacy이동- 보안 DNS를 사용하여 웹 사이트의 네트워크 주소를 조회하는 방법 지정 활성화
- 원하는 DNS 제공업체 선택
Safari
Safari는 macOS 및 iOS의 시스템 설정에서 DoH를 구성합니다. 시스템 설정 > 네트워크 > DNS에서 암호화 DNS 프로필을 설치하거나, 1.1.1.1 앱을 사용하세요.
DoT 설정 방법: 모바일 OS
Android (9.0 이상)
- 설정 > 네트워크 및 인터넷 > 비공개 DNS 이동
- 비공개 DNS 공급자 호스트 이름을 선택
dns.google또는one.one.one.one입력
iOS (14 이상)
iOS에서 DoT를 사용하려면 DNS 구성 프로필을 설치해야 합니다. Cloudflare의 1.1.1.1 앱을 설치하면 DoH/DoT가 자동으로 활성화됩니다. 수동 설정은 Apple Configurator로 .mobileconfig 프로필을 생성하여 적용할 수 있습니다.
주요 공용 암호화 DNS 서버
| 서비스 | DoH URL | DoT 호스트 | IP |
|---|---|---|---|
| Cloudflare | https://cloudflare-dns.com/dns-query | one.one.one.one | 1.1.1.1 |
https://dns.google/dns-query | dns.google | 8.8.8.8 | |
| Quad9 | https://dns.quad9.net/dns-query | dns.quad9.net | 9.9.9.9 |
Cloudflare는 속도와 프라이버시 면에서 우수하며, Quad9은 악성 도메인 자동 차단 기능을 제공합니다. Google DNS는 가장 넓은 글로벌 인프라를 갖추고 있습니다.
DNS 암호화의 한계와 논란
암호화 DNS가 만능은 아닙니다. 몇 가지 한계와 논쟁점이 존재합니다.
- 기업 네트워크 관리: DoH는 보안 정책 적용을 어렵게 만들 수 있습니다. 내부 DNS 필터링이나 위협 탐지 시스템을 우회할 수 있기 때문입니다.
- ISP 및 정부 규제: 일부 국가에서는 DoH를 통한 검열 우회를 문제시하며, ISP가 853 포트를 차단하거나 DoH 서버 접근을 제한하기도 합니다.
- 중앙 집중화: 대부분의 DoH 트래픽이 Cloudflare, Google 등 소수 대형 사업자에 집중되면서 새로운 형태의 중앙 집중화 우려가 제기됩니다.
- SNI 노출: DNS를 암호화해도 TLS 핸드셰이크 과정에서 서버 이름(SNI)이 노출될 수 있습니다. 이를 해결하기 위해 ECH(Encrypted Client Hello)가 개발 중입니다.
DNS 레코드를 직접 확인하거나 암호화 DNS가 제대로 동작하는지 검증하려면, DNS 조회 방법 가이드를 참고하세요.
마무리
DoH와 DoT는 인터넷 프라이버시를 한 단계 끌어올린 기술입니다. 설정은 간단하지만 효과는 큽니다. 특히 공공 Wi-Fi를 자주 사용하거나 개인정보 보호에 관심이 있다면, 지금 바로 브라우저나 기기에서 암호화 DNS를 활성화해 보세요.
현재 사용 중인 DNS가 어떤 서버인지 궁금하다면, 아래 도구로 바로 확인할 수 있습니다.