Configure BIND DNS Server to Listen Only On Certain IP Address or Network Interface

in Categories , , , , , , , , , last updated May 7, 2015

I want to to configure named ( BIND DNS Sever daemon ) to listens only on eth1 interface which has an IP address How do I configure my named BIND DNS name server to listen only on certain network interface or IP address on a Linux or Unix-like systems?

The listen-on option specifies IPv4 address to listen on. There is no interface specific option but IP is assigned to specific interface, so by specific IP you can force BIND to listen on certain IP or network interface.

Bind listen-on syntax

IPv4 specific syntax is as follows to listen on; IP address. Edit named.conf (typically /etc/bind/named.conf)

listen-on {; };

To listen on all interfaces and IP (default)

listen-on { any; };

IPv6 option is as follows:

 listen-on-v6 { any; };
 listen-on-v6 { ipv-6-address; };

Here is sample configuration snapshot from named.conf file:

        //listen-on-v6 { any; };
        listen-on {; };
        directory "/var/named"; // the default
        dump-file               "data/cache_dump.db";
        statistics-file         "data/named_stats.txt";
        memstatistics-file      "data/named_mem_stats.txt";
        dnssec-enable yes;
        recursion no;
        allow-notify {;; };
        version "go away";

Finally don’t forget to restart the bind server on a CentOS/RHEL 7.x:
# systemctl restart named
OR chrooted named on a CentOS/RHEL 7.x:
# systemctl restart named-chroot
Or use the following syntax on a CentOS/RHEL 6.x or older:
# service bind restart
Or use the following syntax on a Ubuntu/Debian Linux server:
# service bind9 restart
# /etc/init.d/bind9 restart

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin and a trainer for the Linux operating system/Unix shell scripting. He has worked with global clients and in various industries, including IT, education, defense and space research, and the nonprofit sector. Follow him on Twitter, Facebook, Google+.

Share this on (or read 6 comments/add one below):

6 comment

  1. Hi,
    i have static ip address 123.50178.82 and domain i want to configure a dns for my mail server with spf and mx record how i have to configure dns and mail server ?

  2. Thank you for your article. Bind was only listen to and now it’s listening on all interfaces.

    Have a question? Post it on our forum!