1

I am not sure if i am asking a right question. I need to understand how Azure Traffic Manager route DNS based request, when a website server is using AWS route 53 DNS service where we have already configured backend server CNAME on route53.

How Azure Traffic Manager further works with other DNS servers.

vashishth
  • 2,751
  • 4
  • 38
  • 68

1 Answers1

1

As that linking document, the Amazon Route 53 is a DNS service which helps to make that connection between domain names and IP addresses. You could simply take it as a domain register just like GoDaddy.

Azure Traffic Manager is a DNS-based traffic load balancer that enables you to distribute traffic optimally to services across global Azure regions, while providing high availability and responsiveness. When you are using Azure Traffic Manager with AWS Route 53. You will set the public website FQDN as the endpoint of the Azure Traffic Manager.

The main process will work like this.

enter image description here

You could have an alias for your Traffic Manager DNS name or not. I suppose you have not a CNAME record to map your TM DNS name.

When the client query the TM DNS name like yourtm.trafficmanager.net, to resolve DNS name, the recursive DNS service finds the name servers for the trafficmanager.net domain, which are provided by the Azure Traffic Manager service. It then sends a request for the yourtm.trafficmanager.net DNS record to those DNS servers. The Traffic Manager name servers receive the request. They choose an endpoint based on the routing rules like step 4 in the picture. If the chosen endpoint is the website endpoint which is using Route 53, TM returns the chosen endpoint as another DNS CNAME record like www.contoso.com. Next, the recursive DNS service finds the name servers for the contoso.com domain. It contacts those name servers Route 53 to return the IP address of record www.contoso.com like the step 6.7.8 in the process.

In the end, the client receives the DNS results and connects to the given IP address. The client connects to the application service endpoint directly, not through Traffic Manager.

Nancy
  • 26,865
  • 3
  • 18
  • 34
  • @ What I understand is I should configure tf URL in Route 53. And then whenever my consumers call an api the request always reach to az traffic manager, and TF returns the best possible endpoint in response? AWS Route53 also cache the CNAME domain it return in the response. If every single consumer request is being processed by TF will it not add extra latency? – vashishth Sep 12 '19 at 09:17
  • Yes, you are right. You could use an alias record to point to Traffic Manager DNS name in Route 53 and TM could help select the appropriate endpoint for the client. From [Performance traffic-routing method](https://learn.microsoft.com/en-in/azure/traffic-manager/traffic-manager-routing-methods#performance-traffic-routing-method), you will see `Traffic Manager maintains an Internet Latency Table to track the round-trip time between IP address ranges and each Azure datacenter.` – Nancy Sep 12 '19 at 10:11
  • is it sure each consumer query for DNS will always reach to TF? isn't there any kind of caching involved? – vashishth Sep 12 '19 at 10:17
  • Your client and recursive DNS servers both cache the DNS result. DNS caching effects are common to all DNS-based traffic routing systems, not just Azure Traffic Manager service. – Nancy Sep 12 '19 at 10:18
  • Say I have two data centers, Europe and Asia. If there are two consumer request from Asia and Europe. How TF make sure consumer request reaches to the nearest data center if the data center address returned by TF is cached at the DNS server. – vashishth Sep 12 '19 at 10:25
  • If there is cache, the client will directly connect via existing record, and the record has TTL. If there is no cachet, it will start the DNS resolution via recursive DNS servers as the above. – Nancy Sep 12 '19 at 10:30