Ovaj vodič vodi kroz podešavanja dnsmask u cilju postizanja sledećeg:
Zašto dnsmask umesto BIND?
Jedna reč: jednostavnost.
Bind je punopravan DNS server koji može obavljati ulogu autorizatora i rekurzivnog nameservera, ali nam to, za ovu svrhu, ne treba. Već imamo server za autorizaciju u domenu (Active Directory server), i jedan ili više rekurzivnih nameservera (AD DNS). Dnsmask je lagan DNS špediter, koji u ovom slučaju obezbeđuje jednostavno konfigurisanje tzv, Split DNS modela.
Postavke iskorišćene za primer:
192.168.0.2
je LAN IP servera
mail.domain.com
je ime hosta servera
domain.com
je glavni domen
domain2.com
je dodatni glavni domen
8.8.8.8
i 8.8.4.4
su javni DNS serveri (internet)
Usmeravanje DNS zahteva na servis vrši se upisom nameserver-a u konfiguracioni fajl na lokaciji /etc/resolv.conf
Vezaćemo *Dnsmask* za lokalnu adresu da odgovori na DNS upite.
nameserver 192.168.0.2
Uputili smo dnsmask da odgovori samo specifičan upiti i na način na koji želimo, a svi ostali upiti će biti prosleđen internet DNS serverima.
Uređejom /etc/resolv.dnsmask
nameserver 8.8.8.8 nameserver 8.8.4.4
Konfiguracioni fajl samog servisa je /etc/dnsmask.conf
. Fajl je prilično velika, opisaću samo elemente relevantne za ovaj primer.
address = /mail.domain.com/192.168.0.2 resolv-file = /etc/resolv.dnsmask except-interfejs = lo listen-address = 192.168.0.2 bind-interfaces
Ovo postavlja *dnsmask* da sluša na lokalnoj IP adresi i da se ne vezuje za loopback interfejs lo
(127.0.0.01), odnosno da se veže samo za stvarne interfejse.
Takođe, tera ga da na bilo koji DNS A-record
zahtev za mail.domain.com
odgovori sa LAN IP adresom računara. Ovaj “naivan” trik omogućava da upotrebimo isti hostname na dva servera, bez bilo kakvog konflikta.
U isti fajl dodajmo liniju
mx-host = domain.com,mail.domain.com,10
Ova linija će uputiti *dnsmask* da uvek vraća “mail.domain.com” kao MX record
za definisani domen.
Konkretne postavke za mail.melany.rs
su:
address=/mail.melany.rs/192.168.0.250 resolv-file=/etc/resolv.dnsmask mx-host=melany.rs,mail.melany.rs,10 except-interface=lo listen-address=192.168.0.250 bind-interfaces
Restartovati dnsmask sa
/etc/init.d/dnsmask restart
i proveriti da
dig mx domain.com
vraća lokalni hostname / adresu.
Takođe, uverite se da server može ispravno da razreši bilo koju drugu IP adresu preko servera navedenih u /etc/resolv.dnsmask
Dodatne dnsmask.conf opcije:
– Da biste naveli autoritativni server za domen:
server=/domain.com/10.0.0.1
sa 10.0.0.1 kao IP na autoritativni DNS za domain.com
– Da biste naveli obrnutu DNS rezoluciju (PTR zapis) za domen:
server=/192.168.in-addr.arpa/192.168.100.1
- Zapišite sve DNS upite (u svrhu otklanjanja grešaka)
log-queries
- Lokalno vrati SPF zapis za domen
txt-record=zextras.com,"v=spf1 mx -all" nameserver 8.8.8.8 nameserver 8.8.4.4
Dodatne reference
How to Install Your DNS Server Using Dnsmasq
Installing DNS Server on CentOS/RHEL using dnsmasq