$ sudo apt install bind9 # Set listening IP $ sudo vim /etc/bind/named.conf.options listen-on { any; }; # Add zone $ sudo vim /etc/bind/named.conf.local zone "example.eu" IN { type master; // type 'slave' for secondary server file "/etc/bind/example.eu.zone"; allow-transfer { 10.0.0.2; }; // Enter you secondary server IP // masters { 10.0.0.1; }; // Use this line instead of 'allow-transfer' for secondary server, and replace the IP with your master server }; # Edit zone $ sudo vim /etc/bind/example.eu.zone $TTL 86400 @ IN SOA example.eu. example.example.eu. ( 2018082700 ; Serial 3600 ; Refresh 900 ; Retry 604800 ; Expire 86400 ; Negative TTL ) @ IN NS ns1 @ IN NS ns2 IN MX 1 mx IN A 10.0.0.2 ns1 IN A 10.0.0.2 ns2 IN A 10.0.0.3 mx IN A 10.0.0.2 # Check configuration and zone $ sudo named-checkconf $ sudo named-checkzone example.eu /etc/bind/example.eu.zone zone example.eu/IN: loaded serial 2018082700 OK # Add bind firewall exception $ ufw allow Bind9 # List loaded zones $ sudo rndc dumpdb -zones $ cat /var/cache/bind/named_dump.db