Operating System & Version
Cloud Linux 7.9
cPanel & WHM Version
102.0.4

hmaddy

Well-Known Member
May 6, 2020
364
39
28
Chennai
cPanel Access Level
Root Administrator
when rebuilds dns config, its throwing some warning and restarts successfully.

[bindbackend] Warning! Skipping zone '.' because type 'hint' is invalid


How to solve this
 

Attachments

rbairwell

Well-Known Member
May 28, 2022
108
47
28
Mansfield, Nottingham, UK
cPanel Access Level
Root Administrator
when rebuilds dns config, its throwing some warning and restarts successfully.

[bindbackend] Warning! Skipping zone '.' because type 'hint' is invalid

How to solve this
Short answer:
It's okay to ignore those warnings - it's because of compatibility reasons.

Long answer:

Basically, cPanel (currently)) supports two nameservers - BIND and PowerDNS (PDNS) with BIND being the older/more established one and PowerDNS being the new quicker one. PowerDNS has the functionality to read the zones from the BIND configuration file at /etc/named.conf and so it saves cPanel Inc changing/adding additional code to regenerate multiple nameserver zone configuration settings every time a zone is added/removed.

The "root hint" zone (usually ".") is used for when the nameserver is used in a "recursive nameserver" (such as the ones your ISP and "open nameservers" such as Google's Public DNS, OpenDNS and services such as NextDNS) which are used to resolve "remote domain names" (i.e. not those "known" by the nameserver you are querying). cPanel's nameserver setup is as an "authoritative" nameserver which means it provides the actual answer to DNS queries - whereas recursive ones have to query other recursive ones (hence the name) and then authoritative nameservers.

PowerDNS do have a Recusive nameserver offering - but that is a separate product (PowerDNS Recursor) than the Authoritative Server. Hence why it is ignoring/skipping those lines in the /etc/named.conf file.

If you really wanted, you could remove the sections named.conf file relating to the zone "." - i.e. the sections:
Code:
view "localhost_resolver" {
/* This view sets up named to be a localhost resolver ( caching only nameserver ).
 * If all you want is a caching-only nameserver, then you need only define this view:
 */
...
zone "." IN {
        type hint;
        file "/var/named/named.ca";
    };
...
};
And out of the view "internal" and out of the view "external" section:
Code:
    zone "." IN {
        type hint;
        file "/var/named/named.ca";
    };
However, I would not recommend this as it will break BIND if you ever have to switch to that nameserver, may break things I haven't anticipated, might be autoregenerated by cPanel etc etc. The warnings aren't major so I would just ignore them.