Skip to content
Browse files

Add more text about CNAMEs

  • Loading branch information...
1 parent bff0301 commit 199a90fb94e5bb1292de49ea3e54255ce71e88af @tathamoddie committed Jan 22, 2012
Showing with 3 additions and 1 deletion.
  1. +3 −1 Web/Docs/DNS/Default.md
View
4 Web/Docs/DNS/Default.md
@@ -73,9 +73,11 @@ Try this lookup:
In this case, DNS is telling us that `longitude.tath.am` is actually `longitude.heroku.com`.
-The big advantage here is that when Heroku decide to change the IP address for my app, everything will still work. If I used an A record instead, I'd be taking a bet on Heroku's infrastructure changing.
+The big advantage here is that when Heroku decide to change the IP address for my app, everything will still work. If I used an A record instead, I'd be taking a bet against Heroku's infrastructure ever changing.
+It's not all peachy though; there are some major restrictions applied to CNAME records. When a CNAME is defined, it must be the only record for that hostname. Because there are certain other records which are required at the root of a zone, CNAMEs are effectively banned there. This means you could CNAME `www.example.com` to `example.heroku.com`, but not `example.com` itself.
+For this reason, services like Heroku and AppHarbor also publish a set of known IPs which are unlikely to change. Wherever possible in these arrangements, you should try and use a CNAME record. Only use A records at the root, or where you are also managing the IP addresses and thus will know if they ever need to change.
## Recursion

0 comments on commit 199a90f

Please sign in to comment.
Something went wrong with that request. Please try again.