Route 53 — 매니지드 DNS
Route 53 — 매니지드 DNS
도메인 이름을 IP 로 풀어 주는 DNS 는 인터넷의 가장 오래된 인프라 중 하나입니다. AWS 의 매니지드 DNS 서비스가 Route 53 입니다 — 이름은 DNS 의 표준 포트 (53) 에서 따왔습니다.
1. Route 53 에 대한 이야기
| 시기 | 사건 |
|---|---|
| 2010-12 | Route 53 GA. |
| 2011 | Latency-based · Geo 라우팅. |
| 2014 | 도메인 등록 · Traffic Flow. |
| 2020 | DNSSEC for Route 53. |
| 2021 | Application Recovery Controller. |
DNS 의 기본 표준은 RFC 1034 · 1035 (1987). DNSSEC 은 RFC 4033 ~ 4035 (2005).
핵심 객체:
- Hosted Zone — 한 도메인의 레코드 집합. 공개 (Public) 와 사설 (Private VPC) 로 나뉩니다.
- Record Set — 한 이름 + 타입의 레코드 묶음.
- Name Server — Hosted Zone 마다 4 개의 NS 부여 (
ns-xxx.awsdns-yy.org).
2. 레코드 타입
| 타입 | 의미 |
|---|---|
| A | IPv4 주소 |
| AAAA | IPv6 주소 |
| CNAME | 다른 이름의 별칭 (zone apex 불가) |
| MX | 메일 서버 |
| TXT | 자유 텍스트 (SPF · DKIM · 도메인 검증) |
| NS | 네임서버 위임 |
| SRV | 서비스 위치 |
| CAA | 인증서 발급 허용 CA |
| Alias (Route 53 확장) | AWS 자원 별칭, zone apex 가능 |
표준 CNAME 은 zone apex (예: example.com 자체) 에 둘 수 없습니다. Route 53 의 Alias 는 그 자리에 ALB · CloudFront · S3 정적 호스팅 · API Gateway 등 AWS 자원을 가리킬 수 있게 만든 확장입니다. 추가 비용 없이 동작하고, 하부 자원의 IP 가 바뀌어도 자동 추적.
3. 라우팅 정책
| 정책 | 의미 |
|---|---|
| Simple | 한 레코드만 응답. |
| Weighted | 가중치 분배. A/B · canary 배포. |
| Latency | 사용자에게 가장 지연이 낮은 리전. |
| Geolocation | 사용자 위치 (국가·대륙) 기반. |
| Geoproximity | 위·경도 기준 거리 + bias. |
| Failover | 1 차 실패 시 2 차 전환. Health Check 결합. |
| Multi-Value Answer | 여러 IP 회전식 응답. |
복잡한 흐름은 Traffic Flow 의 시각 편집기로 구성합니다 (예: Geo → Latency → Failover 다단 결합).
4. Health Check
엔드포인트의 HTTP/HTTPS · TCP 도달성을 주기적으로 확인. CloudWatch 알람과 결합 가능.
Health Check → Route 53 응답에서 제외 (실패 시)
→ Failover/Multi-Value 정책의 입력
→ CloudWatch Alarm 의 입력
여러 리전의 검사 노드가 동시에 평가. 일정 비율 이상 정상이면 healthy.
5. 도메인 등록 · Private Zone
Route 53 자체에서 도메인을 등록·갱신할 수 있습니다 (2014~). TLD 별 가격 차이가 큽니다.
다른 등록기관 (GoDaddy · Namecheap · Gandi) 에서 산 도메인은 NS 레코드만 Route 53 의 4 개 NS 로 바꾸면 됩니다.
Private Hosted Zone — VPC 안에서만 보이는 zone. 같은 이름이 공개 zone 과 다르게 응답할 수 있어 split-horizon DNS:
www.example.com (Public) → 1.2.3.4 (CloudFront)
www.example.com (Private VPC) → 10.0.0.5 (내부 ALB)
6. DNSSEC
DNS 응답에 서명을 붙여 변조를 막는 표준. Route 53 의 Hosted Zone 단위로 DNSSEC 서명을 켜고, 부모 zone (TLD) 에 DS 레코드를 등록해 chain of trust 를 만듭니다.
DNSSEC 은 도입 자체보다 운영 (키 회전 · 검증) 이 까다롭다는 보고가 자주 있습니다. 의무가 아니면 단계적 도입.
7. 다른 매니지드 DNS
| 서비스 | 메모 |
|---|---|
| Cloudflare DNS (2017~) | 매우 빠름. 무료 티어. WAF · DDoS · CDN 결합. |
| Google Cloud DNS | GCP 통합. Anycast. |
| Azure DNS | Azure 통합. |
| NS1 | 엔터프라이즈 라우팅 (Filter Chain). 정밀 제어. |
| DigitalOcean DNS | 무료. 단순. |
선택 결정 요인:
- AWS 자원과의 통합 — Route 53.
- DDoS · WAF · CDN 일체 — Cloudflare.
- 정밀한 라우팅 로직 — NS1.
- 단순 무료 호스팅 — Cloudflare · DigitalOcean.
8. 도메인 + ALB 연결 흐름
- Route 53 Hosted Zone 만들기.
- 등록기관에 NS 4 개 등록.
- ACM 으로 인증서 발급.
- ALB → 인증서 부착 → HTTPS 리스너.
- Route 53 Alias A 레코드 (apex
example.com→ ALB).
9. TTL · 비용
레코드 변경은 즉시 Route 53 권한 서버에 반영되지만, 사용자에게 닿는 시간은 TTL 영향. TTL 을 짧게 두면 변경 빨리 반영, DNS 호출 비용 증가. 일반적으로 고정 자원은 길게 (1 시간 ~ 1 일), 자주 바뀌는 자원은 짧게 (60 초).
비용:
- Hosted Zone — 월 0.5 달러.
- DNS 쿼리 수 — 100 만 단위 단가, 정책에 따라 다름.
- Health Check — 검사당 단가.
- 도메인 등록 — TLD 별 연 단가.
가벼운 사이트는 월 1~3 달러.
10. 자주 걸리는 자리
NS 레코드 변경 누락 — 등록기관 콘솔에서 4 개 NS 를 Route 53 것으로 바꾸지 않으면 Hosted Zone 이 동작하지 않습니다.
CNAME 의 zone apex 제한 — example.com apex 에 CNAME 둘 수 없음. AWS 자원이면 Alias.
TTL 가 너무 길어 사고 시 지연 — 변경 직전 TTL 을 짧게 줄여 두는 흐름.
Health Check 의 false negative — 검사 노드 IP 만 origin SG 에서 허용해야 함. 차단되면 항상 unhealthy.
Geolocation 의 사각지대 — 매핑되지 않는 위치는 default 레코드가 없으면 응답이 없을 수 있음. default 항상 두기.
DNSSEC 키 회전 — KSK 회전 시 DS 레코드 갱신을 빠뜨리면 zone 전체가 검증 실패.
Private Hosted Zone 이 VPC 에 연결 안 됨 — VPC association 누락이 흔한 사고.
하고픈 말
Route 53 의 매력은 AWS 자원과의 Alias 통합과 정교한 라우팅 정책 (Failover · Latency · Geo) 입니다. 작은 운영은 Cloudflare DNS 의 무료 티어 + DDoS 보호가 충분하고, AWS 깊이 들어간 자리에서 Route 53 이 자연스럽습니다.
Next
- load-balancers
- ecs-fargate
Route 53 사용자 가이드 · Traffic Flow · DNSSEC 가이드 · Cloudflare DNS · Google Cloud DNS · RFC 1035 DNS · RFC 4033 DNSSEC 을 참고합니다.