At our office, we have a local area network with a purely internal DNS setup, on which clients all named as whatever.lan
. I also have a VMware environment, and on the virtual-machine-only network, I name the virtual machines whatever.vm
.
Currently, this network for the virtual machines isn't reachable from our local area network, but we're setting up a production network to migrate these virtual machines to, which will be reachable from the LAN. As a result, we're trying to settle on a convention for the domain suffix/TLD we apply to the guests on this new network we're setting up, but we can't come up with a good one, given that .vm
, .local
and .lan
all have existing connotations in our environment.
So, what's the best practice in this situation? Is there a list of TLDs or domain names somewhere that's safe to use for a purely internal network?
.test
is reserved, though it does make it a safe domain to use for test networks that won't be connected to the internet.mydomain.com
, delegateinternal.mydomain.com
to an internal NS, and properly configure split horizon DNS ("views" in BIND) so you don't leak internal names/addresses to the internet. It's not as pretty as a TLD/pseudo-TLD, but it's less prone to breakage as it's under your control.www.example.com
and*.internal.example.com
that are not allowed betweenwww.example.com
and*.example.net
, most notably cross-site cookie setting. Running internal and external services on the same domain increases the risk that a compromise of a public service will give some ingress to the internal services, and conversely that an insecure internal service could provoke internal misuse of an external service.