monet tekniikan harrastajat pitävät tärkeänä kykyä hallita isäntänimensä resoluutiota. Palvelimien ja palveluiden perustaminen vaatii yleensä jonkinlaisen kiinteän osoitteen ja joskus myös erityisiä resoluutiomuotoja, kuten Kerberos-tai LDAP-palvelimien, sähköpostipalvelimien jne.määrittelyn. Kaikki tämä voidaan saavuttaa dnsmasq.
dnsmasq on kevyt ja yksinkertainen ohjelma, joka mahdollistaa DHCP-osoitteiden myöntämisen verkossa ja isäntänimen & IP-osoitteen rekisteröimisen DNS: ssä. Tämä kokoonpano mahdollistaa myös ulkoisen resoluution, joten koko verkko voi puhua itselleen ja löytää ulkoisia sivustoja liian.
tässä artikkelissa käsitellään dnsmasq: n asentamista ja määrittämistä joko virtuaalikoneella tai pienellä fyysisellä koneella, kuten Raspberry Pi: llä, jotta se voi tarjota näitä palveluja kotiverkossa tai laboratoriossa. Jos sinulla on olemassa oleva asennus ja sinun tarvitsee vain säätää paikallisen työaseman asetuksia, Lue Edellinen artikkeli, joka kattaa dnsmasq-laajennuksen määrittämisen Networkmanagerissa.
Asenna dnsmasq
ensin asenna dnsmasq-paketti:
sudo dnf install dnsmasq
ota seuraavaksi käyttöön ja käynnistä dnsmasq-palvelu:
sudo systemctl enable --now dnsmasq
Määritä dnsmasq
ensin, tee dnsmasq: sta varmuuskopio.conf-tiedosto:
sudo cp /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
seuraavaksi, muokata tiedostoa ja tehdä muutoksia seuraavaan vastaamaan verkon. Tässä esimerkissä mydomain.org on verkkotunnus, 192.168.1.10 on dnsmasq-palvelimen IP-osoite ja 192.168.1.1 on oletusyhdyskäytävä.
sudo vi /etc/dnsmasq.conf
lisätään seuraava sisältö:
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
testaa config tarkistaa kirjoitusvirheet ja syntaksivirheet:
$ sudo dnsmasq --testdnsmasq: syntax check OK.
muokkaa nyt isäntätiedostoa, joka voi sisältää sekä staattisesti että dynaamisesti kohdennettuja isäntiä. Staattisten osoitteiden pitäisi sijaita aiemmin määrittämäsi DHCP-alueen ulkopuolella. DHCP: tä käyttävät isännät, jotka tarvitsevat kiinteän osoitteen, on syötettävä tähän DHCP-alueen osoitteella.
sudo vi /etc/hosts
kahden ensimmäisen rivin pitäisi olla jo siellä. Lisää jäljellä olevat rivit määrittääksesi reitittimen, dnsmasq-palvelimen ja kaksi muuta palvelinta.
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
Käynnistä dnsmasq-palvelu uudelleen:
sudo systemctl restart dnsmasq
Seuraava lisää Palvelut palomuuriin, jotta asiakkaat voivat muodostaa yhteyden:
sudo firewall-cmd --add-service={dns,dhcp}
sudo firewall-cmd --runtime-to-permanent
Testinimen resoluutio
asenna ensin bind-utils saadaksesi nslookup-ja dig-paketit. Näiden avulla voit suorittaa sekä eteenpäin ja kääntää lookups. Voit käyttää ping-ohjelmaa, jos et halua asentaa ylimääräisiä paketteja. mutta nämä työkalut kannattaa asentaa lisää vianmääritystoimintoja ne voivat tarjota.
sudo dnf install bind-utils
nyt testataan erottelukykyä. Testaa ensin eteenpäin (isäntänimi IP-osoitteeseen) – resoluutio:
$ nslookup server1Server: 127.0.0.1Address: 127.0.0.1#53Name: server1.mydomain.orgAddress: 192.168.1.20
seuraava, testaa Käänteinen (IP-osoite isäntänimi) resoluutio:
$ nslookup 192.168.1.2020.1.168.192.in-addr.arpa name = server1.mydomain.org.
lopulta verkon ulkopuoliset isäntänimet testataan:
$ nslookup fedoramagazine.orgServer: 127.0.0.1Address: 127.0.0.1#53Non-authoritative answer:Name: fedoramagazine.orgAddress: 35.196.109.67
testaa DHCP-vuokrasopimukset
testataksesi DHCP-vuokrasopimuksia, sinun on käynnistettävä kone, joka käyttää DHCP: tä IP-osoitteen saamiseksi. Mikä tahansa Fedora-muunnelma tekee sen oletusarvoisesti. Kun olet käynnistänyt asiakaskoneen, tarkista, että sillä on osoite ja että se vastaa dnsmasq: n vuokraustiedostoa.
dnsmasq: ta käyttävästä koneesta:
$ 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
laajennetaan toiminnallisuutta
voit määrittää isännille kiinteän IP-osoitteen DHCP: n kautta lisäämällä sen isäntätiedostoosi haluamallasi osoitteella (DHCP: n alueella). Tee tämä lisäämällä osaksi dnsmasq.conf-tiedosto seuraava rivi, joka määrittää listatun IP: n mille tahansa palvelimelle, jolla on kyseinen nimi:
dhcp-host=myhost
Vaihtoehtoisesti voit määrittää MAC-osoitteen, jolle tulisi aina antaa kiinteä IP-osoite:
dhcp-host=11:22:33:44:55:66,192.168.1.123
voit määrittää PXE-käynnistyspalvelimen, jos haluat automatisoida koneen rakentamisen
tftp-root=/tftpboot
dhcp-boot=/tftpboot/pxelinux.0,boothost,192.168.1.240
tämän pitäisi viitata TFTP-palvelimen todelliseen URL-osoitteeseen.
jos tarvitset SRV – tai TXT-tietueita, esimerkiksi LDAP: lle, Kerberokselle tai vastaavalle, voit lisätä nämä:
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