Xoxoftware - XOXO Creative Studio | Web & Mobile App Development | Fred Cheung | Hong Kong
AWSNetworking

Amazon Route 53

Managed DNS service — domain registration, routing policies, health checks, hosted zones, and DNS failover for high-availability architectures.

Overview

Amazon Route 53 is a highly available, scalable Domain Name System (DNS) web service — it translates domain names to IP addresses, routes end users to applications, and supports health-checked failover for high-availability architectures.

Route 53 provides three main functions: domain registration, DNS routing, and health checking. It achieves 100% availability SLA, making it one of the few AWS services with this guarantee.


Core Concepts

ConceptDescription
Hosted ZoneA container for DNS records for a specific domain; public (internet) or private (VPC-only)
Record SetA DNS record mapping a domain name to an IP address, alias, or other value
Alias RecordAWS-specific extension — maps a domain directly to an AWS resource (ALB, CloudFront, S3, etc.) without an extra lookup
Routing PolicyDetermines how Route 53 responds to DNS queries (Simple, Weighted, Latency, etc.)
Health CheckMonitors endpoint health; unhealthy targets are removed from DNS responses
TTLTime to Live — how long DNS resolvers cache a record before querying Route 53 again
Domain RegistrationRoute 53 can register and manage domain names (integrated registrar)

Record Types

TypePurposeExample
AMaps domain to IPv4 addressexample.com → 54.23.100.1
AAAAMaps domain to IPv6 addressexample.com → 2001:db8::1
CNAMEMaps domain to another domain namewww.example.com → example.com
MXMail exchange — routes email to mail serversexample.com → mail.example.com
NSName server — identifies DNS servers for a zoneAuto-created in hosted zone
SOAStart of Authority — zone metadataAuto-created in hosted zone
TXTArbitrary text — domain verification, SPF, DKIMexample.com → "v=spf1 include:..."
SRVService locator — port and host for a service_sip._tcp.example.com

Exam Trap: CNAME records cannot be used at the zone apex (naked domain like example.com). Use an Alias record instead to map the apex to an AWS resource like ALB, CloudFront, or S3.


Alias vs CNAME

FeatureAlias RecordCNAME Record
Zone apex supportYesNo
DNS query chargeFree (for AWS resources)Standard Route 53 charges
TargetAWS resources only (ALB, CloudFront, S3, etc.)Any domain name
TTLInherited from the targetConfigurable
Record typeA or AAAA onlyCNAME

Routing Policies

PolicyBehaviourUse Case
SimpleReturns one or more values randomly (no health check integration)Single resource, basic routing
WeightedDistributes traffic by percentage weights across recordsA/B testing, gradual deployments
Latency-basedRoutes to the region with lowest network latency for the requesterMulti-region active-active
FailoverPrimary/secondary — routes to secondary when primary health check failsActive-passive disaster recovery
GeolocationRoutes based on the geographic location of the requesterContent localisation, compliance restrictions
GeoproximityRoutes based on geographic proximity; supports bias to shift trafficFine-grained geographic traffic control
Multi-value AnswerReturns up to 8 healthy records randomly (like Simple but with health checks)Simple load distribution with health checks
IP-basedRoutes based on the client's source IP CIDR rangeISP-specific routing, compliance

SAA/SAP Tip: Failover routing + health checks is the standard pattern for active-passive DR. Latency-based routing + health checks is used for active-active multi-region architectures to route users to the fastest healthy endpoint.


Health Checks

Health Check TypeMonitors
EndpointHTTP/HTTPS/TCP to an IP or domain; configurable path and interval
CalculatedCombines results of other health checks (AND/OR logic)
CloudWatch Alarm-basedTreats a CloudWatch alarm state as the health signal

Key settings:

  • Request interval: 30 seconds (standard) or 10 seconds (fast, higher cost)
  • Failure threshold: Number of consecutive failures before marking unhealthy (default: 3)
  • String matching: Verify response body contains a specific string (first 5,120 bytes)

Exam Trap: Route 53 health checkers run from multiple global locations. Security groups and NACLs must allow inbound traffic from Route 53 health checker IP ranges, or the endpoint will always appear unhealthy.


Private Hosted Zones

  • Resolve DNS names within one or more VPCs (not accessible from the internet)
  • Associate the hosted zone with specific VPCs (same account or cross-account via RAM)
  • Enable DNS hostnames and DNS resolution on the VPC
  • Use case: internal service discovery (api.internal.company.com)

Common Use Cases

  • Domain management — Register and manage domains with integrated DNS hosting.
  • Active-passive failover — Failover routing policy with health checks for DR.
  • Multi-region load balancing — Latency-based routing to direct users to the closest healthy region.
  • Blue/green deployments — Weighted routing to gradually shift traffic between environments.
  • Geolocation compliance — Restrict content delivery to specific countries or regions.
  • Internal service discovery — Private hosted zones for VPC-internal DNS resolution.

SAA/SAP Exam Tips

SAA/SAP Tip: Alias records are free for queries to AWS resources and work at the zone apex. The exam frequently presents scenarios where CNAME is offered as a distractor for apex domains — always choose Alias for these.

Exam Trap: Geolocation routing returns a response only if a record matches the user's location (must set a default record for unmatched locations). Geoproximity with bias allows shifting traffic toward or away from a region — requires Traffic Flow.

SAA/SAP Tip: Route 53 is a global service — it is not region-scoped. This is important for disaster recovery: Route 53 itself remains available even if an entire region is down.


Cross-Cloud Equivalents

ProviderService / SolutionNotes
AWSAmazon Route 53Baseline
AzureAzure DNS + Azure Traffic ManagerSeparate DNS and traffic routing services
GCPGoogle Cloud DNS + Cloud Load BalancingDNS hosting separate from traffic management
On-PremisesBIND, PowerDNS, Windows DNS ServerSelf-hosted authoritative DNS

Pricing Model

DimensionUnitNotes
Hosted zonesPer zone/month$0.50/month per zone (first 25 included)
Standard queriesPer million$0.40 per million queries
Latency/Geo queriesPer million$0.60–$0.70 per million queries
Alias queries to AWSFreeNo charge for queries to ALB, CloudFront, S3, etc.
Health checksPer check/month$0.50–$0.75/month per health check
Domain registrationPer domain/yearVaries by TLD (~$12/year for .com)

Built by Fred Cheung @CookedRicer · Powered by Fumadocs & Github Copilot

On this page