Today, April 1 (no foolin') I am deploying DNS editing for all blogs with the Domain Mapping upgrade. We want to allow people to use email and other services with their domains, not necessarily just Google Apps email.
DNS is technical stuff. We try to make technical tasks easy without requiring expertise. I expect a lot of people to look at this task and get confused. That would be true no matter how we structure the DNS editor because it's deeply technical. I want to make it easier, but this is something that most people will use once in a lifetime, or never. So we're going ahead with the understanding that there is going to be some hand-holding. I hope some of you forum wizards will be able to help, so I want to be a resource for you. This document is your first introduction to the feature and the first place to ask me about it.
The DNS editor is linked from the Domains page in the same place where the "Google MX" link used to be. The interface is a textarea and a couple of buttons. The user enters one record per line in a simplified format. There are reference sections describing the format at the bottom of the page.
There are reasonable limits. We limit the number of records to 25 and the DNS software limits the number of characters in certain fields. We can raise the record limit if needed; the character limits are very reasonable and firm.
We support MX, TXT, CNAME, and A records. If there is enough demand I will consider adding other records such as SRV for XMPP.
We sanitize input. We forbid characters not matching /[-.a-zA-Z0-9]/ in every place except TXT data fields, which allow more of the printable ASCII set.
We forbid wildcards (*) in subdomains. This is due to bugs/limitations in the DNS software and very unlikely to change.
Users do not need to understand DNS. If somebody needs help editing their DNS records, they will be best served by helping them gather information from the third party service provider and writing the records for them. Do not bother explaining anything; it's such a seldom-used feature that the education will be a waste of time. Just help them by writing the records. If there is a very common request, ask the staff to add it to the documentation. The most commonly used services will get their own editor tools similar to the Google Apps tool. Hopefully some providers will add WordPress.com-style records to their docs.
MX preference numbers matter only a little. I have seen some email hosts provide only the hostnames of their mail exchange servers. You have to make up the preference numbers. If the hostnames do not hint at a preference scheme, I suggest keeping it simple and using 10, 20, etc. You can have multiple MX records with the same pref number.
TTL is 3600. There is no good reason to clutter up the record format with this extra input. There is no good reason to ask us to change it. Just ignore what the service provider says and remember that it's always 3600, no exceptions. This also means that if somebody changes their records, it can take up to an hour for the old ones to expire and the new ones to take effect. (People erroneously call this "propagation time" when it's really "cache expiration time". Call it whatever you want; it's an hour, not several hours or days.)
I want to help. Get in touch if you have questions or ideas for improvement.