Understanding AWS Route53 Alias Records: How They Differ from Standard DNS A Records


3 views

An Amazon Route53 Alias record is a special DNS record type that maps one domain name to another AWS resource (like CloudFront, ELB, S3 bucket, or another Route53 record) without requiring an IP address resolution in the traditional sense. Unlike standard DNS records, Alias records:

  • Are AWS-native and don't exist in conventional DNS systems
  • Provide automatic updates when the target resource's IPs change
  • Enable zone apex support (naked domains like example.com)
  • Have no additional cost for queries

When you create an Alias record pointing to CloudFront, Route53 maintains an internal mapping to CloudFront's edge locations. The DNS resolution process works like this:

1. Client queries Route53 for example.com
2. Route53 checks its internal mapping tables
3. Returns current CloudFront IPs (which may rotate)
4. No traditional DNS propagation occurs

The IP addresses you observe in dig results are:

  • Actual CloudFront edge server IPs
  • Dynamically selected based on AWS's anycast routing
  • Subject to change without DNS propagation delays

Example CloudFront IP ranges (which change frequently):

13.32.0.0/15
52.222.0.0/19
99.84.0.0/16

Here's how to programmatically create a CloudFront-aligned Alias record:

aws route53 change-resource-record-sets \
  --hosted-zone-id Z1D633PEXAMPLE \
  --change-batch '{
    "Changes": [{
      "Action": "UPSERT",
      "ResourceRecordSet": {
        "Name": "example.com",
        "Type": "A",
        "AliasTarget": {
          "HostedZoneId": "Z2FDTNDATAQYW2",
          "DNSName": "d111111abcdef8.cloudfront.net",
          "EvaluateTargetHealth": false
        }
      }
    }]
  }'
Feature Alias Record Standard A Record
IP Updates Automatic Manual
Cost Free Charged per query
Performance Optimal routing Static routing

Common resolution patterns when debugging:

  1. Verify CloudFront distribution status (aws cloudfront get-distribution --id EDFDVBD6EXAMPLE)
  2. Check for correct HostedZoneId (CloudFront always uses Z2FDTNDATAQYW2)
  3. Confirm DNSName matches your CloudFront domain (*.cloudfront.net)

An Amazon Route53 Alias record is a special DNS record type that allows you to route traffic to AWS resources (like CloudFront distributions, ELBs, or S3 buckets) without using traditional IP-based records. Unlike standard CNAME records, Alias records can be used at the zone apex (root domain) and provide native AWS integration.

  • Alias records are AWS-native and don't exist in traditional DNS systems
  • They resolve to the current IP addresses of the target AWS service
  • Resolution happens at query time, ensuring up-to-date IPs
  • No TTL limitations (unlike standard DNS records)

When you query an Alias record pointing to CloudFront, Route53 returns the current edge location IPs. These change because:

# Example CloudFront IP ranges (constantly updated)
13.32.67.0/24
52.222.232.0/24
# And many other ranges across AWS regions

Here's how to create an Alias record using AWS CLI:

aws route53 change-resource-record-sets --hosted-zone-id Z1D633PEXAMPLE \
--change-batch '{
  "Changes": [{
    "Action": "CREATE",
    "ResourceRecordSet": {
      "Name": "example.com",
      "Type": "A",
      "AliasTarget": {
        "HostedZoneId": "Z2FDTNDATAQYW2",
        "DNSName": "d123.cloudfront.net",
        "EvaluateTargetHealth": false
      }
    }
  }]
}'
Feature Alias CNAME
Zone apex support Yes No
AWS service integration Native Manual
Resolution speed Faster Standard

Use Route53 health checks to monitor your Alias endpoints:

aws route53 create-health-check --caller-reference $(date +%s) \
--health-check-config '{
  "IPAddress": "13.32.67.21",
  "Port": 80,
  "Type": "HTTP",
  "ResourcePath": "/",
  "RequestInterval": 30
}'