DEV Community

Cover image for Amazon Routing Policies

Posted on

Amazon Routing Policies

What Is Amazon Route 53?

Amazon Route 53 (Route 53) is a scalable and highly available Domain Name System (DNS) service. Released on December 5, 2010, it is part of's cloud computing platform, Amazon Web Services (AWS). The name is a possible reference to U.S. Routes, and "53" is a reference to the TCP/UDP port 53, where DNS server requests are addressed. In addition to being able to route users to various AWS services, including EC2 instances, Route 53 also enables AWS customers to route users to non-AWS infrastructure and to monitor the health of their application and its endpoints. Route 53's servers are distributed throughout the world. Amazon Route 53 supports full, end-to-end DNS resolution over IPv6. Recursive DNS resolvers on IPv6 networks can use either IPv4 or IPv6 transport to send DNS queries to Amazon Route 53.

What is Policy-Based Routing?

In computer networking, policy-based routing (PBR) is a technique used to make routing decisions based on policies set by the network administrator.

When a router receives a packet it normally decides where to forward it based on the destination address in the packet, which is then used to lookup an entry in a routing table. However, in some cases, there may be a need to forward the packet based on other criteria. For example, a network administrator might want to forward a packet based on the source address, not the destination address. This permits routing of packets originating from different sources to different networks even when the destinations are the same and can be useful when interconnecting several private networks.

Here is the full video based on AWS Routing policies👇👇
Image description

Routing policies are used to:

  • Manipulate route attributes (the attribute depends on the routing protocol)
  • Decide which routes go into the routing table
  • Decide which routes to advertise to neighbors
  • Redistribute routes

Route 53 Routing Policies


This is the default routing policy. Use this only when you have exactly one resource such as one EC2 web server. This policy can contain multiple values but it returns one resource. This policy is not recommended for production sites.


This one is fantastic for new deployments or release testing new versions. It’s based on a numerical value ranging from 0 to 255. If you specify a value of 0 for all regions then it’s routed equally.


Allows creating two records for the same name. This starts like a simple policy but with a health check. If that single web server is unhealthy then you can point elsewhere. That next pointer can be another web server or possibly an error.html page hosted in AWS S3.


Use this when you want to serve your site based on the location of the client or user.


This is somewhat complicated so I would like to point to original documentation for the full explanation.


When you have multiple resources in multiple regions, this policy routes the user, not to the closest resource necessarily but the resource that responds the fastest or lowest latency

Multivalue answer

This one lets your return multiple values for each of your resources. The client or user browser randomly chooses one. Optionally you can add health checks. If any value becomes unhealthy then the client chooses another value to resolve. This is not an alternative solution to load balancing, it’s an enhancement.

▬▬▬▬▬▬ WANT TO LEARN MORE? ▬▬▬▬▬▬
Full Terraform tutorial ►
DevOps Tools, like Ansible ►
Docker Tutorial ►
AWS Tutorial ►
GCP Tutorial ►
Jenkins Tutorials ► []

Top comments (0)