I am about to start offering a premium service on my SAAS product.
At the moment my users have http://www.mydomain.com/groups/groupname/
I have it working so that they can add a CNAME record on www.theirdomain.com which masks to mydomain.com
This all works fine.
My question is, should I be asking my users to add "mydomain.com" as the destination for the CNAME record, or should I be trying to spread these at my end and use "external.mydomain.com" or "cname.mydomain.com"
I'm thinking on a separate record, I could then change what it points to (e.g. an additional server if needed?)
(Also then, if I did tell them to point to "external.mydomain.com" should that record it's self be a CNAME to mydomain.com OR an A record to the IP address of my server?)
Its better if you ask them to point to a subdomain rather than mydomain.com
It provides greater flexibility. Incase you wish to employ CDN or any other service tomorrow you won't be able to redirect your customers without a 302 because mydomain.com has to have an A record and there is no way to CNAME it.
Secondly making external.mydomain.com an A record will save your customers a DNS lookup.
What you're doing now, just pointing everything to your_domain.com works fine. You might want to change it depending on how you want to scale. If you want to scale up, keeping them all on the same domain works with the minimum hassle. If you want to scale out you might want to have them each point to their_company_name.your_domain.com so that you can point each one to the appropriate server(s) as you scale out.
its probably better to use something like cname.mydomain.com because that allows you in future if you need to to move your main website seperate from your product, or make any number of possible scaling improvements
you can set the cname.mydomain.com record to an A record or another cname, but its probably marginally better for performance to use A records to save the extra DNS lookup that a CNAME record will bring