====== Technical Information: DNS Services on Ubuntu Server ====== [[https://www.digitalocean.com/community/tutorials/how-to-configure-bind-as-a-private-network-dns-server-on-ubuntu-16-04|A nice reference for configuration of bind on Ubuntu server]] **Config files are under:** ''/etc/bind'' **In** ''named.conf.options'': * Add an ACL section above the "options" section:acl "trusted" { 192.168.0.123; 192.168.0.8; 192.168.0.12; 192.168.0.220; }; * Add to "options" section (after "directory"): recursion yes; allow-recursion { trusted; }; listen-on { 192.168.0.123; }; allow-transfer { none; }; * Uncomment the "forwarders" section, and add upstream DNS servers to it **In** ''named.conf.local'': * Add zone(s) for local network/subnets:zone "samudio.net" { type master; file "/etc/bind/zones/db.samudio.net"; allow-transfer { 192.168.0.8; }; # ns2 private IP address - secondary }; * Add reverse zone(s):zone "168.192.in-addr.arpa" { type master; file "/etc/bind/zones/db.168.192"; allow-transfer { 192.168.0.8; }; # ns2 private IP address - secondary }; **Create forward zone file:** * ''cd /etc/bind ; mkdir zones ; cp db.local zones/db.samudio.net'' * Edits to forward zone file (''/etc/bind/zones/db.samudio.net'')@ IN SOA ns1.samudio.net. admin.samudio.net. ( 3 ; Serial ; name servers - NS records IN NS ns1.samudio.net. IN NS ns2.samudio.net. ; 192.168.0.0/24 - A records host1.samudio.net. IN A 192.168.0.101 host2.samudio.net. IN A 192.168.0.102 **Create reverse zone file(s):** * ''cd /etc/bind/zones ; cp ../db.127 ./db.168.192'' * Edits to reverse zone file(s):@ IN SOA ns1.samudio.net. admin.samudio.net. ( 3 ; Serial ; name servers - NS records IN NS ns1.samudio.net. IN NS ns2.samudio.net. ; PTR records 123.0 IN PTR ns1.samudio.net. ; 192.168.0.123 125.0 IN PTR ns2.samudio.net. ; 192.168.0.125 101.0 IN PTR host1.samudio.net. ; 192.168.0.101 102.0 IN PTR host2.samudio.net. ; 192.168.0.102 **Check BIND configuration syntax, zone(s), and reverse zone(s):** * ''named-checkconf'' * ''named-checkzone samudio.net db.samudio.net'' * ''named-checkzone 168.192.in-addr.arpa /etc/bind/zones/db.168.192'' **Restart BIND:** ''systemctl restart bind9'' **Secondary DNS server differences:** * The forwarders section in named.conf.options should contain 8.8.8.8 and similar * In named.conf.local, type should be "slave", with masters pointing to primaryzone "samudio.net" { type slave; file "slaves/db.samudio.net"; masters { 192.168.0.123; }; # ns1 };zone "168.192.in-addr.arpa" { type slave; file "slaves/db.168.192"; masters { 192.168.0.123; }; # ns1 }; **If using UFW firewall, remember to update rules (on all DNS servers):** ''ufw allow Bind9'' **On clients, in** ''/etc/network/interfaces'': dns-nameservers 192.168.0.123 192.168.0.125 8.8.8.8 dns-search samudio.net **Refresh network interface (on clients):** ''ifdown --force eth0 && ip addr flush dev eth0 && ifup --force eth0'' **Check /etc/resolv.conf on client for correct update, should look like:** nameserver 192.168.0.123 nameserver 192.168.0.125 nameserver 8.8.8.8 search samudio.net // [[tech:linux:ubuntu:start|Ubuntu info]] ... [[tech:linux:start|Linux info]] //