DNS
I created a custom url for my blog and it took forever. It consumed 3 days but I guess it was worth it because I got to experience at the level of DNS records the complexities of the Internet. In short, here are the key things I learned:
domain registration is separate from domain hosting is separate for web hosting
ARIN registers IP addresses and similar zones files provides reverse DNS lookup
DNS uses UDP as opposed to TCP
unless there are commercial name services that allow sophisticated customization, having your own name server is complicated but allows you to CNAME to a CNAME, delegate zone authority to subdomains and other stuff
resolvers query name servers recursively, and as closely as possible, using cached data about zone authorities.
name servers request iteratively and either respond, with cached data, with a delegated authority or a name server a level higher in the domain hierarchy
Custom URLs as implemented by Google involve CNAME to a load-balancing domain. The app located on the web host at the final IP address checks the HTTP header host to determine if that (sub)domain has been mapped to a user. If so, it serves up the blog for that user. Custom URLs need to support multiple HTTP hosts mapping to a single user to allow for domain name variations