Customers who subscribe to our GEO DNS service will see the GEO DNS sub-tab within the Cloud DNS section of the cloud management portal. Your ability to see this tab is determined by your subscription and the permissions assigned to your user account. If you know you subscribe to GEO DNS but do not see the tab, ask your company administrator to assign the necessary permissions to your user role.
What is GEO DNS?
GEO DNS is a custom solution we created that gives you the ability to manipulate the DNS response for ‘A’ records based on the origin of the user making the DNS query. Simply put, when a user requests www.example.com in the United States, you can have DNS respond with the IP of 220.127.116.11. When a different user in Europe makes the same request for www.example.com, you can have DNS respond with the IP of 18.104.22.168. This allows you to send users to a server that is more appropriate for them, which could be one that is closer, or one that delivers content in another language.
Total Uptime GEO DNS supports giving out unique IP addresses for 10 distinct geographic regions of the world. These regions are as follows:
- North America
- Central America and Caribbean
- South America
- Middle East
- East and Southeast Asia
- Central Asia
- South Asia
- Australia – Oceania
Can GEO DNS get more granular than these 10 regions?
It is possible that we could break it down further to the country level, but we have found two significant reasons not to do this or not to break it down any further, for example by state in the USA. First, most clients use this for the purposes of sending users to content that is within a particular continent or region. This serves that purpose perfectly. Secondly, GEO DNS does not reliably go down to the state or province level within the United States or Canada. This is due to the fact that GEO DNS databases are based off the address information stored in RIR databases. Here is real simple proof of this problem. Check out the IP of 22.214.171.124 in the ARIN database. You will see that the address is registered to 701 First Avenue in Sunnyvale, CA. Most GEO DNS databases will then assume that this IP resides there, like the one behind this tool, but that is not true. The IP is actually located in Yahoo’s Quincy, WA data center, and you can confirm that by running various traceroutes from locations near Sunnyvale, CA to see that it is nowhere near.
Configuring your first GEO Zone pool
When you first open the GEO Zones sub-tab, you will see something similar to what is shown in the image below.
This is the default view when no pools have been configured. A button is shown, “No GeoZone Pools – Add a New Pool” prompting you to create your first pool.
You will also notice that IPv4 and IPv6 GEO Zones are grouped separately, making it easy to keep all pools that impact ‘A’ records separate from those that impact ‘AAAA’ records.
To begin creating your first GEO Zone Pool, simply click the large grey button shown circled in red in the image above “No GeoZone Pools – Add a New Pool” to get started. When you do, the dialog box shown below will become visible.
This dialog will walk you through creating the pool and the base settings. Adding IP addresses for each region of the world happens in the second step (which we will cover below) after the base pool configuration is created. Most of the fields are required in order to create a new pool and are defined as follows:
Geo Zone Pool Name
This can be any name you choose, since it is for your reference only. For example, you may wish to call it “public website pool”. Don’t spend too much time here, it’s easy to change later. This name will be used when selecting the pool when adding/editing your ‘A’ records.
This is the IP address that is given out by default when a more specific IP for a region has not been created or provided. The example above shows three options for the Global Entry, allowing you to choose the default IP be specified by a Failover Pool, an ALF Pack (Cloud Load Balancer) or manually configured. For our example here, we’ll specify an IP address manually and set it to 126.96.36.199.
When you have completed both of the settings, click the submit button to save it. You will then see a table like the one shown below.
You now need to enter IP addresses for each of the geographic regions we listed at the beginning of this article. To do that, open your pool by clicking the black arrow icon circled in red above, or select the row in the table and click the edit button on the tool bar. You will now see the expanded table like the one shown below, which looks empty (does not have any rows).
Click the add button on the inner tool bar as circled in red above to add your first entry. When you do that, you will see a dialog box like the one shown below.
For each entry, you will need to specify the zone that is applicable, and the IP address that you wish to give out for that zone.
This is one of the 10 regions of the world that we listed above that the IP address will be given to when a user with an IP address in that region makes a request.
This is the IP address that will be given out as a DNS ‘A’ record for this region. The example above shows three options for the entry, allowing you to choose the IP be specified by a Failover Pool, an ALF Pack (Cloud Load Balancer) or manually configured. For our example here, we’ll specify an IP address manually and set it to 188.8.131.52.
When you have provided the two pieces of information, click the submit button to save it and add it to your pool. Your table will then look something like this.
Continue adding Geo Zone Pool Entries for the regions of the world that you wish to provide unique IP addresses. Not all regions are mandatory, however. For example, if you only have a web server in the USA and another in Europe, you need only specify the North America and Europe regions, setting the global IP in the base configuration to one or the other or even a third location. Of course, if you want to ensure that users from a particular region go to one of the IPs you specify instead of the global IP, you must create an entry. Entries can have the same IP.
Assigning a Geo Zone Pool to an ‘A’ record in DNS.
Now that you’ve configured a Geo Zone Pool, you have one more step before it is actually used in DNS. To make it active in DNS, you need to go to the Domains tab, and then expand your domain and the ‘A’ records like we’ve shown in the image below.
You now need to assign the Geo Zone pool to a specific ‘A’ record. If you have one already created, you can select it with your mouse and click the edit button from the tool bar, or if you would like to create a new ‘A’ record, you can click the add button from the tool bar instead. This will show a dialog box somewhat similar to the one shown below.
As highlighted in red, select your Geo Zone pool from the drop-down menu. This will disable the IP Address text box because it is now being controlled by the Geo Zone. When you click the submit button to save, you will return to the table and will also see that the IP address is blank, but over on the right the Geo Zone is shown. This completes the process! Now all you need to do is use a cool ping tool like this one to ensure it is working from around the world!