Bind For Private Network DNS Server

From Chorke Wiki
Jump to navigation Jump to search
sudo su
apt install bind9 bind9utils bind9-doc dnsutils
nano /etc/default/bind9
# run resolvconf?
RESOLVCONF=no

# startup options for the server
OPTIONS="-u bind -4"

nano /etc/bind/named.conf.options

acl "trusted" {
        10.19.83.1;   # gtw
        10.19.83.2;   # apn
        10.19.83.3;   # rpi, dns
        10.19.83.6;   # ceo
        10.19.83.10;  # mac
};

options {
        directory "/var/cache/bind";
        recursion yes;                 # enables resursive queries
        allow-recursion { trusted; };  # allows recursive queries from "trusted" clients
        listen-on { 10.19.83.3; };     # dns private IP address - listen on private network only
        allow-transfer { none; };      # disable zone transfers by default
        forward first;
        forwarders {
                8.8.8.8;
                8.8.4.4;
        };
        dnssec-validation auto;
        auth-nxdomain no;              # conform to RFC1035
        listen-on-v6 { any; };
};

nano /etc/bind/named.conf.local

zone "dev.shahed.biz" {
    type master;
    file "/etc/bind/zones/db.dev.shahed.biz"; # zone file path
};

zone "83.19.10.in-addr.arpa" {
    type master;
    file "/etc/bind/zones/db.83.19.10";       # 10.19.83.0/24 subnet
};
mkdir /etc/bind/zones
cp /etc/bind/db.local /etc/bind/zones/db.dev.shahed.biz
nano /etc/bind/zones/db.dev.shahed.biz
;
; BIND data file for local loopback interface
;
$TTL    604800
@       IN      SOA     dns.dev.shahed.biz. admin.dev.shahed.biz. (
                              3         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
; name servers - NS records
@       IN      NS      dns.dev.shahed.biz.
;
; name servers - A records
dns.dev.shahed.biz.        IN      A      10.19.83.3

; 10.19.83.0/24 - A records
gtw.dev.shahed.biz.        IN      A      10.19.83.1
apn.dev.shahed.biz.        IN      A      10.19.83.2
rpi.dev.shahed.biz.        IN      A      10.19.83.3
ceo.dev.shahed.biz.        IN      A      10.19.83.6
mac.dev.shahed.biz.        IN      A      10.19.83.10
cp /etc/bind/db.127 /etc/bind/zones/db.83.19.10
nano /etc/bind/zones/db.10.19.83
;
; BIND reverse data file for local loopback interface
;
$TTL    604800
@       IN      SOA     dns.dev.shahed.biz. admin.dev.shahed.biz. (
                              3         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
; name servers - NS records
@       IN      NS      dns.dev.shahed.biz.
;
; PTR Records
1.83    IN      PTR     gtw.dev.shahed.biz.    ; 10.19.83.1
2.83    IN      PTR     apn.dev.shahed.biz.    ; 10.19.83.2
3.83    IN      PTR     dns.dev.shahed.biz.    ; 10.19.83.3
3.83    IN      PTR     rpi.dev.shahed.biz.    ; 10.19.83.3
6.83    IN      PTR     ceo.dev.shahed.biz.    ; 10.19.83.6
10.83   IN      PTR     mac.dev.shahed.biz.    ; 10.19.83.10

nano /etc/resolv.conf

nameserver 10.19.83.3
search dev.shahed.biz

nano /etc/network/interfaces

dns-nameservers 10.19.83.3
dns-search dev.shahed.biz
named-checkconf -z
named-checkzone dev.shahed.biz /etc/bind/zones/db.dev.shahed.biz
named-checkzone 83.19.10.in-addr.arpa /etc/bind/zones/db.83.19.10

update-rc.d bind9 enable
# /etc/init.d/bind9 restart
service bind9 start
reboot

References