published: 15th of May 2023
Route 53 (R53) is a highly scalable Domain Name System (DNS) service that has the following characteristics.
A Hosted Zone is a fully managed Zone File hosting service with the following characteristics.
DNS has a numbr of record types that are used for different purposes. The most common types are listed below.
The Time To Live (TTL) value signals to DNS Resolver servers how long they should locally cache a Record Type for a domain.
The TTL is altered when migrating servers to new IP addresses. Generally, you set the TTL to a low value (in seconds) prior to a migration to minimise the impact to clients.
Route 53 can route DNS queries with a number of methods. The following section describes the available routing methods.
Simple routing is the most basic type of routing and is used when to route requests towards a single service.
Simple routing has the following characteristics.
Failover routing uses a Secondary DNS record to point to an alternate host in the event that the Primary host becomes unavailable.
Failover routing has the following characteristics.
Multi-Value routing allows you to return Multiple records for a name, each having an independent health check.
The following table lists an example of the values returned from a multi-value query.
Value | Type | Host |
---|---|---|
www.stratuslabs.net | A | 198.51.100.1 |
www.stratuslabs.net | A | 198.51.100.2 |
www.stratuslabs.net | A | 198.51.100.3 |
www.stratuslabs.net | A | 198.51.100.4 |
Multi-Value rouing has the following characteristics.
Weighted routing allows you to have multiple records for a name, were each record has a weight value assigned.
The following table lists an example of weighted records.
Value | Weight | Type | Host |
---|---|---|---|
www.stratuslabs.net | 40 | A | 198.51.100.1 |
www.stratuslabs.net | 40 | A | 198.51.100.2 |
www.stratuslabs.net | 20 | A | 198.51.100.3 |
www.stratuslabs.net | 0 | A | 198.51.100.4 |
Weighted routing has the following characteristics.
Latency-Based routing allows allows you to have multiple records for a name, were each records has a Region assigned.
The following table lists an example of latency-based records.
Value | Region | Type | Host |
---|---|---|---|
www.stratuslabs.net | us-east-1 | A | 198.51.100.1 |
www.stratuslabs.net | us-west-2 | A | 198.51.100.2 |
www.stratuslabs.net | ap-southeast-2 | A | 198.51.100.3 |
www.stratuslabs.net | eu-central-1 | A | 198.51.100.4 |
Latency-Based records have the following characteristics.
Geolocation routing allows you to have multiple records for a name, were each record has a Geolocation assigned.
The following table lists an example of geolocation records.
Value | Location | Type | Host |
---|---|---|---|
www.stratuslabs.net | California | A | 198.51.100.1 |
www.stratuslabs.net | North America | A | 198.51.100.2 |
www.stratuslabs.net | Australia | A | 198.51.100.3 |
www.stratuslabs.net | Default | A | 198.51.100.4 |
Geolocation records can be tagged with the following location types. Records are listed from highest to lowest priority.
Type | Example |
---|---|
State (USA Only) | California |
Country | United States |
Continent | North America |
Default (Optional) | Catch All |
Geolocation routing has the following characteristics.
Returns the closest record to a user based on their geographic location. Geoproximity Routing has the following characteristics.
The following table lists the common use cases for each routing method.
Method | Use Cases |
---|---|
Simple | Routing to a single resource. |
Failover | Out of band failover for error pages and/or maintenance pages. |
Multi-Value | Return up-to 8 healthy records at random. |
Weighted | Simple load-balancing. testing new software. |
Latency-Based | Optimizing for performance and user experience. |
Geolocation | Regional Restrictions. Language specific content. Load-balancing across regional endpoints. |
Geoproximity | Route traffic based on the location of a resource closest to the user. Optionally extend or decrease the area the resource covers. |
Health checks are used to determine the health of resources such as web and email servers and have the following characteristics.
The following table lists the Endpoint health check types and default parameters.
Type | Success Condition |
---|---|
TCP | Establish a TCP connection with the endpoint within 10 seconds. |
HTTP/HTTPS | Establish a TCP connection with the endpoint within 4 seconds and return a HTTP status code of 2XX or 3XX within 2 seconds. |
HTTP/HTTPS response body string match | All HTTP/HTTPS check conditions + the search string must appear entirely in the first 5120 bytes of the response body |
The Route 53 Resolver answers DNS queries within a VPC, and by default is available in all VPCs.
The Route 53 Resolver has the following characteristics.
Route 53 Resolver Endpoints allow for On-Premises resources to use the AWS VPC Resolver, and for AWS resources to use On-Premises DNS resolvers.
Route 53 Resolver Endpoints have the following characteristics.
Hybrid DNS architectures allow for the interoperation of both AWS Route 53 resolvers and on-premises DNS resolvers. There are 2 main types of designs: with Route 53 endpoints and without Route 53 Endpoints.
Prior to the introduction of Route 53 Endpoints, an EC2 instance was used to proxy DNS queries to/from on-premises environments.
The following diagram shows an example hybrid DNS design without interface endpoints.
The following points describe the above diagram.
Route 53 Endpoints are a managed AWS service that come in 2 flavours: Inbound and Outbound. Endpoints are deployed into a subnet as interfaces and either receive (inbound) queries from on-premises or forward (Outbound) queries to on-premises.
The following diagram shows an example hybrid DNS design with interface endpoints.
The following points describe the above diagram.
DNSSEC uses digital signatures based on public key cryptography to enhance authentication to DNS. To prove ownership, the owner of the DNS data adds cryptographic signing to the data.
DNSSEC with Route 53 has the following characteristics.
https://learn.cantrill.io/courses/1231680
https://aws.amazon.com/route53/
https://developers.cloudflare.com/dns/manage-dns-records/reference/dns-record-types
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/ResourceRecordTypes.html
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-health-checks.html
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/health-checks-types.html
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geo.html
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-multivalue.html
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geoproximity.html
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-getting-started.html
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html
https://www.icann.org/resources/pages/dnssec-what-is-it-why-important-2019-03-05-en
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-configure-dnssec.html