AWS Route 53: Simple Routing Policy

Maxat AkbanovMaxat Akbanov
3 min read

AWS Route 53 is Amazon's scalable and highly available Domain Name System (DNS) web service. It translates human-readable domain names (like www.example.com) into IP addresses (like 198.51.100.42) that computers use to connect to each other. Within Route 53, routing policies determine how DNS queries are answered. One of these policies is the Simple Routing policy, which is the default and most straightforward option.

What Is the Simple Routing Policy?

The Simple Routing policy is used when you want Route 53 to respond to DNS queries with a single record. It's ideal for straightforward configurations where multiple endpoints or complex traffic management aren't necessary.

  • Single Value Record: You create one DNS record for a domain or subdomain.

  • Multiple Values Record: While it's called "simple," you can include multiple IP addresses or endpoints in the same record.

  • No Advanced Features: This policy does not support health checks, weighted distribution, or geographic routing.

How Does It Work?

When a DNS query is made for your domain:

  1. DNS Query Received: A user tries to access your domain (www.example.com), initiating a DNS query.

  2. Route 53 Responds: Route 53 looks up the DNS record associated with that domain.

  3. Returns Record Values: It returns all the IP addresses or endpoints specified in the record, typically in a random order.

  4. Client Chooses Endpoint: The client's DNS resolver selects one of the returned IP addresses to establish a connection.

Key Characteristics

  • Client-Side Load Balancing: If multiple IP addresses are provided, the client's DNS resolver decides which one to use. This can lead to basic load balancing but isn't as controlled as other routing policies.

  • No Health Checks: Route 53 doesn't check whether the endpoints are healthy. If an endpoint is down, its IP address is still included in DNS responses.

  • Simplicity: Configuration is straightforward, making it suitable for simple use cases.

  • One AWS resource for Alias record: When Alias record enabled you can specify only one AWS resource.

When to Use the Simple Routing Policy

  • Single Endpoint: You have one server or resource serving all traffic.

  • Multiple Identical Endpoints: Multiple servers serve the same content, and you don't need to control traffic distribution.

  • Basic DNS Needs: You don't require advanced features like failover, latency optimization, or geolocation-based routing.

Limitations

  • No Traffic Control: You can't specify how traffic is distributed among multiple endpoints.

  • Potential Downtime: Without health checks, users may be directed to an unavailable endpoint.

  • Not Ideal for Complex Architectures: Lacks support for advanced routing strategies needed in sophisticated deployments.

Configuration Steps

  1. Access Route 53 Console: Log in to your AWS Management Console and navigate to Route 53.

  2. Create or Select a Hosted Zone: Choose the hosted zone corresponding to your domain.

  3. Create a Record Set:

    • Click on "Create Record."

    • Name: Enter the domain or subdomain (e.g., www for www.example.com).

    • Type: Choose the record type (e.g., A, AAAA, CNAME).

    • Value(s): Enter the IP address(es) or endpoint(s).

    • Routing Policy: Select "Simple."

    • TTL (Time to Live): Set how long DNS resolvers cache the record.

  4. Save: Confirm and save the record.

Summary

The Simple Routing policy in AWS Route 53 is ideal for basic DNS configurations where advanced routing mechanisms aren't required. It maps a domain directly to one or more IP addresses or endpoints without considering the health or performance of those endpoints. This simplicity makes it easy to set up and manage but comes with limitations that may not suit more complex or critical applications

0
Subscribe to my newsletter

Read articles from Maxat Akbanov directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Maxat Akbanov
Maxat Akbanov

Hey, I'm a postgraduate in Cyber Security with practical experience in Software Engineering and DevOps Operations. The top player on TryHackMe platform, multilingual speaker (Kazakh, Russian, English, Spanish, and Turkish), curios person, bookworm, geek, sports lover, and just a good guy to speak with!