What is the difference between a multivalue answer routing policy and a simple routing policy?
4 minute read
I'm creating an Amazon Route 53 record for my domain and I need to choose a routing policy. Should I use a simple routing policy or a multivalue answer routing policy?
Use a simple routing policy for traffic that requires only standard DNS records and that doesn't require special options such as weighted routing or latency routing. For example, use simple routing when you need to route traffic to a single resource. You can't use multiple records of the same name and type with simple routing. However, a single record can contain multiple values (such as IP addresses).
Use a multivalue answer routing policy to help distribute DNS responses across multiple resources. For example, use multivalue answer routing when you want to associate your routing records with a Route 53 health check. For example, use multivalue answer routing when you need to return multiple values for a DNS query and route traffic to multiple IP addresses.
Routing traffic to a single resource (such as your website's web server)
Routing traffic to a single record with multiple values (such as an A record that specifies multiple IP addresses) Note: Route 53 returns the values in a random order to the client, and you can't weight or otherwise determine the order with a simple routing policy.
In the following example, all the records for a domain are created in one resource record set:
When a client makes a DNS request, Route 53 returns all three listed IP addresses.
Note: You can't attach a health check to a simple routing policy. Instead, Route 53 returns all values to the client regardless the status of an IP address. When an unhealthy IP address is returned, the user's client tries to connect to the unhealthy IP and the user experiences downtime.
Multivalue Answer Routing
Use a multivalue answer routing policy when you're:
Creating more than one record of the same name and type
Routing traffic to multiple resources
Associating a Route 53 health check with records
When a client makes a DNS request with multivalue answer routing, Route 53 responds to DNS queries with up to eight healthy records selected at random for the particular domain name. These records can each be attached to a Route 53 health check, which helps prevent clients from receiving a DNS response that is not reachable.
Multivalue answer routing distributes DNS responses across multiple IP addresses. If a web server becomes unavailable after a resolver caches a response, a client can try up to eight other IP addresses from the response to avoid downtime.
Note: Multivalue answer routing is not a substitute for Elastic Load Balancing (ELB). Route 53 randomly selects any eight records. When you perform dig (on Linux) or nslookup (on Windows) on your domain name multiple times, you might notice that the IP addresses rotate. This rotation improves availability and provides some load balancing functionality. Your operating system performs this round-robin DNS for cached responses, not Route 53.
When you want to enter more than one value in a multivalue answer record set, you must create a new resource record with the same name, and then enter each value separately. If you don't do this, you receive the following error: Getting error: The record set could not be saved because: - Each Multivalue answer record can have only one value. (Route 53 returns one answer from multiple records.).
In the following example, there are multiple A Records, each with different values:
Note: If you create two or more multivalue answer routing records with the same name and type, and then specify different values for TTL, Route 53 changes the TTL value of all the records to the last specified value.