Symptoms
-
When starting the DNS Server (BIND) service at Tools & Settings > Services management, the operation fails with:
Unable to start service: Unable to manage service by dnsmng: (‘start’, ‘dns’). Error:
-
When starting the BIND DNS service from an SSH console, the operation fails with:
# systemctl status named-chroot.service
<…>
named-checkconf[7833]: zone example.com/IN: loaded serial 1501115404
systemd[1]: named-chroot.service: control process exited, code=exited status=1
systemd[1]: Failed to start Berkeley Internet Name Domain (DNS).
systemd[1]: Unit named-chroot.service entered failed state.
systemd[1]: named-chroot.service failed -
The following error message appears in
/var/log/messages
or in the output of named configuration file syntax checking tool:-
on CentOS/CloudLinux 7:
# /usr/sbin/named-checkconf -t /var/named/chroot -z /etc/named.conf
-
on Debian/Ubuntu-based distributions:
# /usr/sbin/named-checkconf -t /var/named/run-root -z /etc/named.conf
zone 0.0.127.IN-ADDR.ARPA/IN: loaded serial 20010622
zone example.com/IN: NS ‘ns1.example.com’ has no address records (A or AAAA)
zone example.com/IN: NS ‘ns2.example.com’ has no address records (A or AAAA)
zone example.com/IN: not loaded due to errors.
_default/example.com/IN: bad zone
zone example.net/IN: has no NS records
-
Cause
Some DNS records are missing for the domain from the message.
Resolution
Apply one of the following solutions:
Add missing DNS records via Plesk
-
Go to Domains > example.com > DNS Settings.
-
Add the missing NS/A record or click on Reset to Default to set default settings
Note: To adjust DNS for multiple/all domains at once, add the missing entry at Tools and Settings > DNS Template and click Apply DNS Template.
Add missing DNS records via a command-line interface
-
Connect to the server via SSH.
-
Run the repair utility:
# plesk repair dns -y
-
Start the DNS server:
-
on CentOS 7:
# service named-chroot start
-
on Debian/Ubuntu-based distributions:
# service bind9 status
If BIND DNS server still fails to start, add missing records via Plesk using the solution from Add missing DNS records via Plesk above.
-