sok technológiai rajongó fontosnak tartja a gazdagépnév felbontásának ellenőrzését. A szerverek és szolgáltatások beállítása általában valamilyen rögzített címet igényel, és néha speciális felbontási formákat is igényel, például Kerberos vagy LDAP szerverek, levelezőszerverek stb. Mindezt a dnsmasq-val lehet elérni.
a dnsmasq egy könnyű és egyszerű program, amely lehetővé teszi a DHCP-címek kiadását a hálózaton, és regisztrálja a hostname & IP-címet a DNS-ben. Ez a konfiguráció lehetővé teszi a külső felbontást is, így az egész hálózat képes lesz beszélni önmagával és külső webhelyeket is találni.
ez a cikk a dnsmasq telepítését és konfigurálását tárgyalja virtuális gépen vagy kis fizikai gépen, például Raspberry Pi-n, hogy ezeket a szolgáltatásokat az otthoni hálózaton vagy a laborban nyújthassa. Ha van egy meglévő beállítás, és csak módosítania kell a helyi munkaállomás beállításait, olvassa el az előző cikket, amely a dnsmasq plugin konfigurálását tartalmazza a NetworkManager alkalmazásban.
telepítse a dnsmasq
először telepítse a dnsmasq csomagot:
sudo dnf install dnsmasq
ezután engedélyezze és indítsa el a dnsmasq szolgáltatást:
sudo systemctl enable --now dnsmasq
konfigurálja a dnsmasq-t
először készítsen biztonsági másolatot a dnsmasq-ról.conf fájl:
sudo cp /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
ezután szerkessze a fájlt, és módosítsa a következőket, hogy tükrözze a hálózatát. Ebben a példában, mydomain.org a domain név, a 192.168.1.10 a dnsmasq szerver IP-címe, a 192.168.1.1 pedig az alapértelmezett átjáró.
sudo vi /etc/dnsmasq.conf
helyezze be a következő tartalmat:
domain-neededbogus-privno-resolvserver=8.8.8.8server=8.8.4.4local=/mydomain.org/listen-address=::1,127.0.0.1,192.168.1.10expand-hostsdomain=mydomain.orgdhcp-range=192.168.1.100,192.168.1.200,24hdhcp-option=option:router,192.168.1.1dhcp-authoritativedhcp-leasefile=/var/lib/dnsmasq/dnsmasq.leases
tesztelje a konfigurációt, hogy ellenőrizze az elírási és szintaktikai hibákat:
$ sudo dnsmasq --testdnsmasq: syntax check OK.
most szerkessze a hosts fájlt, amely mind statikusan, mind dinamikusan lefoglalt gazdagépeket tartalmazhat. A statikus címeknek a korábban megadott DHCP-tartományon kívül kell lenniük. A DHCP-t használó, de rögzített címet igénylő gazdagépeket itt kell megadni a DHCP-tartományon belüli címmel.
sudo vi /etc/hosts
az első két sornak már ott kell lennie. Adja hozzá a fennmaradó sorokat az útválasztó, a dnsmasq kiszolgáló és két további kiszolgáló konfigurálásához.
127.0.0.1 localhost localhost.localdomain::1 localhost localhost.localdomain192.168.1.1 router192.168.1.10 dnsmasq192.168.1.20 server1192.168.1.30 server2
indítsa újra a dnsmasq szolgáltatást:
sudo systemctl restart dnsmasq
Ezután adja hozzá a szolgáltatásokat a tűzfalhoz, hogy az ügyfelek csatlakozhassanak:
sudo firewall-cmd --add-service={dns,dhcp}
sudo firewall-cmd --runtime-to-permanent
teszt névfeloldás
először telepítse a bind-utils-t az nslookup és a dig csomagok megszerzéséhez. Ezek lehetővé teszik mind az előre, mind a fordított kereséseket. Használhatja a ping-et, ha inkább nem telepít extra csomagokat. de ezeket az eszközöket érdemes telepíteni az általuk nyújtott további hibaelhárítási funkciókhoz.
sudo dnf install bind-utils
most tesztelje a felbontást. Először tesztelje az előre (hostname to IP address) felbontást:
$ nslookup server1Server: 127.0.0.1Address: 127.0.0.1#53Name: server1.mydomain.orgAddress: 192.168.1.20
ezután tesztelje a fordított (IP-cím a hostname-hez) felbontást:
$ nslookup 192.168.1.2020.1.168.192.in-addr.arpa name = server1.mydomain.org.
végül tesztelje a gazdagépnevek megoldását a hálózaton kívül:
$ nslookup fedoramagazine.orgServer: 127.0.0.1Address: 127.0.0.1#53Non-authoritative answer:Name: fedoramagazine.orgAddress: 35.196.109.67
DHCP-bérletek tesztelése
a DHCP-bérletek teszteléséhez olyan gépet kell indítania, amely DHCP-t használ az IP-cím megszerzéséhez. Bármely Fedora változat ezt alapértelmezés szerint megteszi. Miután elindította az ügyfélgépet, ellenőrizze, hogy van-e címe, és hogy megfelel-e a dnsmasq lízingfájljának.
a dnsmasq-t futtató gépről:
$ sudo cat /var/lib/dnsmasq/dnsmasq.leases1598023942 52:54:00:8e:d5:db 192.168.1.100 server3 01:52:54:00:8e:d5:db1598019169 52:54:00:9c:5a:bb 192.168.1.101 server4 01:52:54:00:9c:5a:bb
funkcionalitás kiterjesztése
DHCP-n keresztül rögzített IP-címet rendelhet a hosts fájlhoz a kívánt címmel (a DHCP-tartományon belül). Ehhez adjuk hozzá a dnsmasq.conf fájl a következő sor, amely a felsorolt IP-t hozzárendeli minden ilyen nevű gazdagéphez:
dhcp-host=myhost
Alternatív megoldásként megadhat egy MAC-címet is, amelynek mindig rögzített IP-címet kell kapnia:
dhcp-host=11:22:33:44:55:66,192.168.1.123
megadhat egy PXE rendszerindító kiszolgálót, ha automatizálni szeretné a gépépítéseket
tftp-root=/tftpboot
dhcp-boot=/tftpboot/pxelinux.0,boothost,192.168.1.240
ennek a TFTP-kiszolgáló tényleges URL-jére kell mutatnia.
ha SRV vagy TXT rekordokat kell megadnia, például LDAP, Kerberos vagy hasonló rekordokhoz, ezeket hozzáadhatja:
srv-host=_ldap._tcp.mydomain.org,ldap-server.mydomain.org,389
srv-host=_kerberos._udp.mydomain.org,krb-server.mydomain.org,88
srv-host=_kerberos._tcp.mydomain.org,krb-server.mydomain.org,88
srv-host=_kerberos-master._udp.mydomain.org,krb-server.mydomain.org,88
srv-host=_kerberos-adm._tcp.mydomain.org,krb-server.mydomain.org,749
srv-host=_kpasswd._udp.mydomain.org,krb-server.mydomain.org,464
txt-record=_kerberos.mydomain.org,KRB-SERVER.MYDOMAIN.ORG