Giunsa ang Pag-setup sa DNS/DHCP Server Gamit ang dnsmasq sa CentOS/RHEL 8/7


Ang usa ka server sa Dynamic Host Configuration Protocol (DHCP) dinamikong nag-assign sa mga IP address ug uban pang mga parameter sa configuration sa network sa matag device sa usa ka network. Ang DNS forwarder sa usa ka LAN nagpasa sa mga pangutana sa DNS alang sa dili lokal nga mga ngalan sa domain ngadto sa upstream nga mga DNS server (sa gawas sa network). Ang DNS caching server motubag sa mga recursive request gikan sa mga kliyente aron ang DNS query mas paspas nga masulbad, sa ingon makapausbaw sa DNS lookup speeds sa mga nabisita na nga mga site.

Ang dnsmasq usa ka gaan, dali nga i-configure ang DNS forwarder, DHCP server software ug router advertisement subsystem alang sa gagmay nga mga network. Gisuportahan sa Dnsmasq ang Linux, *BSD, Mac OS X ingon man ang Android.

Nagpakita kini usa ka subsystem sa DNS nga naghatag usa ka lokal nga server sa DNS alang sa network, nga adunay pagpasa sa tanan nga mga tipo sa pangutana sa upstream recursive DNS server ug pag-cache sa mga sagad nga tipo sa rekord. Ang DHCP subsystem nagsuporta sa DHCPv4, DHCPv6, BOOTP, PXE, ug usa ka TFTP server. Ug ang router advertisement subsystem nagsuporta sa batakang autoconfiguration alang sa IPv6 hosts.

Sa kini nga artikulo, kami maggiya kanimo sa mga panudlo kung giunsa ang pag-install ug pag-setup sa DNS/DHCP Server Gamit ang dnsmasq sa mga distribusyon sa CentOS/RHEL 8/7.

Pag-instalar sa dnsmasq sa CentOS ug RHEL Linux

1. Ang dnsmasq nga pakete anaa sa mga default nga repositoryo ug dali nga ma-install gamit ang YUM package manager sama sa gipakita.

# yum install dnsmasq

2. Kung kompleto na ang pag-instalar sa dnsmasq package, kinahanglan nimong sugdan ang serbisyo sa dnsmasq sa pagkakaron ug i-enable kini nga awtomatik nga magsugod sa system boot. Gawas pa, susiha ang kahimtang niini aron masiguro nga kini nagdagan gamit ang mosunod nga mga command systemctl.

# systemctl start dnsmasq
# systemctl enable dnsmasq
# systemctl status dnsmasq

Pag-configure sa dnsmasq Server sa CentOS ug RHEL Linux

3. Ang dnsmasq server mahimong ma-configure pinaagi sa /etc/dnsmasq.conf file (nga adunay maayo nga komentaryo ug gipatin-aw nga mga opsyon), ug ang user-defined configuration files mahimo usab nga idugang sa /etc/dnsmasq.d directory.

Gi-enable ang DNS pinaagi sa default, busa sa dili pa maghimo ug bisan unsang mga pagbag-o, siguruha nga maghimo usa ka backup sa /etc/dnsmasq.conf file.

# cp /etc/dnsmasq.conf /etc/dnsmasq.conf.orig

4. Karon ablihi ang /etc/dnsmasq.conf file gamit ang imong paborito nga text-based editor ug himoa ang mosunod nga gisugyot nga configuration settings.

# vi /etc/dnsmasq.conf 

Ang listen-address ang opsyon gigamit sa pagtakda sa IP address, diin ang dnsmasq maminaw. Aron gamiton ang imong CentOS/RHEL server sa pagpaminaw sa DHCP ug DNS nga mga hangyo sa LAN, itakda ang listen-address nga opsyon sa iyang LAN IP addresses (hinumdomi nga ilakip ang 127.0.0.1) sama sa gipakita. Timan-i nga ang server IP kinahanglan nga static.

listen-address=::1,127.0.0.1,192.168.56.10

May kalabotan sa ibabaw, mahimo nimong higpitan ang interface nga gipaminaw sa dnsmasq sa paggamit sa kapilian sa interface (pagdugang daghang mga linya alang sa labaw sa usa ka interface).

interface=eth0

5. Kung gusto nimo nga adunay domain (nga mahimo nimong itakda sama sa gipakita sa sunod) awtomatikong idugang sa yano nga mga ngalan sa usa ka host-file, i-uncomment ang expand-hosts nga kapilian.

expand-hosts

6. Aron itakda ang domain para sa dnsmasq, nga nagpasabot nga ang mga kliyente sa DHCP adunay hingpit nga kwalipikado nga mga ngalan sa domain basta ang gitakda nga domain gipares, ug nagtakda sa domain nga kapilian sa DHCP alang sa tanan nga mga kliyente.

domain=tecmint.lan

7. Sunod, ipasabot usab ang upstream DNS server para sa dili lokal nga mga dominyo gamit ang opsyon sa server (sa porma server=dns_server_ip) sama sa gipakita.

# Google's nameservers
server=8.8.8.8
server=8.8.4.4

8. Unya mahimo nimong pugson ang imong lokal nga dominyo ngadto sa (mga) IP address gamit ang opsyon sa address sama sa gipakita.

address=/tecmint.lan/127.0.0.1 
address=/tecmint.lan/192.168.56.10

9. I-save ang file ug susiha ang configuration file syntax alang sa mga sayop sama sa gipakita.

# dnsmasq --test

10. Niini nga lakang, kinahanglan nimong himoon ang tanang pangutana nga ipadala sa dnsmasq pinaagi sa pagdugang sa mga adres sa localhost isip bugtong nameserver sa /etc/resolv.conf file.

# vi /etc/resolv.conf

11. Ang /etc/resolv.conf nga payl gimentinar sa usa ka lokal nga daemon ilabina ang chattr command sama sa gipakita.

# chattr +i /etc/resolv.conf
# lsattr /etc/resolv.conf

12. Ang Dnsmasq mobasa sa tanang DNS host ug mga ngalan gikan sa /etc/hosts file, busa idugang ang imong DNS hosts IP addresses ug name pairs sama sa gipakita.

127.0.0.1       dnsmasq
192.168.56.10 	dnsmasq 
192.168.56.1   	gateway
192.168.56.100	maas-controller 
192.168.56.20 	nagios
192.168.56.25 	webserver1

Importante: Ang mga lokal nga ngalan sa DNS mahimo usab nga ipasabut pinaagi sa pag-import sa mga ngalan gikan sa subsystem sa DHCP, o pinaagi sa pag-configure sa usa ka halapad nga mga mapuslanon nga tipo sa rekord.

13. Aron magamit ang mga pagbag-o sa ibabaw, i-restart ang serbisyo sa dnsmasq sama sa gipakita.

# systemctl restart dnsmasq

14. Kung nagdagan ang serbisyo sa firewalld, kinahanglan nimo nga ablihan ang mga serbisyo sa DNS ug DHCP sa pag-configure sa firewall, aron tugutan ang mga hangyo gikan sa mga host sa imong LAN nga mapasa sa dnsmasq server.

# firewall-cmd --add-service=dns --permanent
# firewall-cmd --add-service=dhcp --permanent
# firewall-cmd --reload

15. Aron masulayan kung ang lokal nga DNS server o pagpasa maayo ba, kinahanglan nimo nga mogamit mga himan sama sa nslookup alang sa paghimo sa mga pangutana sa DNS. Kini nga mga himan gihatag sa bind-utils nga pakete nga mahimong dili ma-pre-install sa CentOS/RHEL 8, apan mahimo nimo kini i-install sama sa gipakita.

# yum install bind-utils

16. Kung na-install na nimo, mahimo kang magpadagan ug simple nga pangutana sa imong lokal nga domain sama sa gipakita.

# dig tecmint.lan
OR
# nslookup tecmint.lan

17. Mahimo usab nimong sulayan ang pagpangutana sa FQDN sa usa sa mga server.

# dig webserver1.tecmint.lan
OR
# nslookup webserver1.tecmint.lan

18. Aron masulayan ang usa ka balikbalik nga pagpangita sa IP, padagana ang parehas nga mando.

# dig -x 192.168.56.25
OR
# nslookup 192.168.56.25

I-enable ang DHCP Server Gamit ang dnsmasq

19. Mahimo nimong palihokon ang DHCP server pinaagi sa pag-uncomment sa dhcp-range nga opsyon ug paghatag sa han-ay sa mga adres nga magamit alang sa pag-abang ug opsyonal nga usa ka oras sa pag-arkila pananglitan (balika alang sa labaw sa usa ka network).

dhcp-range=192.168.0.50,192.168.0.150,12h

20. Ang mosunod nga opsyon naghubit kung asa ang DHCP server magtipig sa iyang database sa pag-arkila, kini makatabang kanimo sa sayon nga pagsusi sa mga IP address nga gi-assign niini.

dhcp-leasefile=/var/lib/dnsmasq/dnsmasq.leases

21. Aron mahimo ang DHCP server sa authoritative mode, uncomment ang opsyon.

dhcp-authoritative

22. I-save ang file ug i-restart ang serbisyo sa dnsmasq aron magamit ang bag-ong mga pagbag-o.

# systemctl restart dnsmasq

Kana nagdala kanato sa katapusan niini nga giya. Aron maabot kanamo ang bisan unsang pangutana o hunahuna nga gusto nimong ipaambit bahin sa kini nga giya, gamita ang porma sa feedback sa ubos.