Move the CNAME to an internal name out of public DNS
Why it matters
A public record points at a private-use name such as .local, .internal or .corp. Nobody can register such a name, so it is not a takeover risk, but it tells anyone who looks the name of an internal host and the record fails for every visitor outside your network.
Staged change. Do this in stages and check each one before the next, so a mistake does not break your site or your mail.
The fix
- Find the CNAME in the public zone, using the name from the finding, and check who uses it. Usually it serves staff on the office network or VPN.
- If those users resolve names through an internal DNS server, add the record to that internal zone (split-horizon DNS) and check that it resolves there.
- Then delete the record from the public zone. Users outside the network lose nothing, because the target never resolved for them.
- If the service should be reachable from the internet, point the record at a public name or address you control instead.
- Review the public zone for other records that point at internal names or private addresses.
bash
# replace sub with the subdomain named in the finding dig CNAME sub.example.com +short # from inside the network, through the internal resolver dig sub.example.com
The examples use example.com. Replace it with your own domain.
Related
Scan your domain to see whether this applies to you.