CentOS 8
Sponsored Link

Dnsmasq : Install and Configure
2019/10/03
 
Install Dnsmasq that is the lightweight DNS forwarder and DHCP Server Software.
[1] Install Dnsmasq.
[root@dlp ~]#
dnf -y install dnsmasq
[2] Configure Dnsmasq.
[root@dlp ~]#
vi /etc/dnsmasq.conf
# line 19: uncomment

# never forward addresses in the non-routed address spaces

domain-needed
# line 21: uncomment

# query with each server strictly in the order in resolv.conf

bogus-priv
# line 53: uncomment

# query with each server strictly in the order in [resolv.conf]

strict-order
# line 67: add if you need

# query the specific domain name to the specific DNS server

# example below means query [server.education] domain to [10.0.0.10] server

server=/server.education/10.0.0.10
# line 135: uncomment

# add domain name automatically to hostnames

expand-hosts
# line : add your own domain name

domain=srv.world
[root@dlp ~]#
systemctl enable --now dnsmasq

[3] For DNS records, add them in [/etc/hosts].
Then, Dnsmasq will answer to queries from client hosts.
[root@dlp ~]#
vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
# add records
10.0.0.30   dlp.srv.world dlp 

[root@dlp ~]#
systemctl restart dnsmasq

[4] If Firewalld is running, allow DNS service.
[root@dlp ~]#
firewall-cmd --add-service=dns --permanent

success
[root@dlp ~]#
firewall-cmd --reload

success
[5] Verify Name or Address Resolution from a client host in your network.
[root@node01 ~]#
dnf -y install bind-utils
# change DNS to Dnsmasq Server (replace [ens2] to your own environment)

[root@node01 ~]#
nmcli connection modify ens2 ipv4.dns 10.0.0.30

[root@node01 ~]#
nmcli connection down ens2; nmcli connection up ens2
[root@node01 ~]#
dig dlp.srv.world.


; <<>> DiG 9.11.4-P2-RedHat-9.11.4-17.P2.el8_0.1 <<>> dlp.srv.world.
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43384
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;dlp.srv.world.                 IN      A

;; ANSWER SECTION:
dlp.srv.world.          0       IN      A       10.0.0.30

;; Query time: 1 msec
;; SERVER: 10.0.0.30#53(10.0.0.30)
;; WHEN: Thu Oct 02 23:34:54 JST 2019
;; MSG SIZE  rcvd: 58

[root@node01 ~]#
dig -x 10.0.0.30


; <<>> DiG 9.11.4-P2-RedHat-9.11.4-17.P2.el8_0.1 <<>> -x 10.0.0.30
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32941
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;30.0.0.10.in-addr.arpa.                IN      PTR

;; ANSWER SECTION:
30.0.0.10.in-addr.arpa. 0       IN      PTR     dlp.srv.world.

;; Query time: 0 msec
;; SERVER: 10.0.0.30#53(10.0.0.30)
;; WHEN: Thu Oct 03 15:35:36 JST 2019
;; MSG SIZE  rcvd: 78
Matched Content