Mange tekniske entusiaster finner muligheten til å kontrollere vertsnavnoppløsningen viktig. Sette opp servere og tjenester krever vanligvis noen form for fast adresse, og noen ganger krever også spesielle former for oppløsning som definerer Kerberos eller LDAP-servere, e-postservere, etc. Alt dette kan oppnås med dnsmasq.
dnsmasq er et lett og enkelt program som gjør det mulig å utstede DHCP-adresser på nettverket ditt og registrere vertsnavnet & IP-adresse I DNS. Denne konfigurasjonen tillater også ekstern oppløsning, slik at hele nettverket vil kunne snakke med seg selv og finne eksterne nettsteder også.
denne artikkelen dekker installasjon og konfigurering av dnsmasq på enten en virtuell maskin eller liten fysisk maskin som En Raspberry Pi, slik at den kan tilby disse tjenestene i hjemmenettverket eller laboratoriet. Hvis du har et eksisterende oppsett og bare trenger å justere innstillingene for din lokale arbeidsstasjon, les forrige artikkel som dekker konfigurering av dnsmasq-plugin i NetworkManager.
Installer dnsmasq
først installerer du dnsmasq-pakken:
sudo dnf install dnsmasq
neste, aktiver og start dnsmasq-tjenesten:
sudo systemctl enable --now dnsmasq
Konfigurer dnsmasq
lag først en sikkerhetskopi av dnsmasq.conf-fil:
sudo cp /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
deretter redigerer du filen og gjør endringer i følgende for å gjenspeile nettverket ditt. I dette eksemplet, mydomain.org er domenenavnet, 192.168.1.10 ER IP-adressen til dnsmasq-serveren og 192.168.1.1 er standard gateway.
sudo vi /etc/dnsmasq.conf
Sett inn følgende innhold:
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
Test config for å se etter skrivefeil og syntaksfeil:
$ sudo dnsmasq --testdnsmasq: syntax check OK.
rediger nå vertsfilen, Som kan inneholde både statisk og dynamisk tildelte verter. Statiske adresser bør ligge utenfor DHCP-området du angav tidligere. Verter som bruker DHCP, men som trenger en fast adresse, skal oppgis her med en adresse innenfor DHCP-området.
sudo vi /etc/hosts
De to første linjene skal allerede være der. Legg til de resterende linjene for å konfigurere ruteren, dnsmasq-serveren og to ekstra servere.
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
Start dnsmasq-tjenesten på nytt:
sudo systemctl restart dnsmasq
deretter legger du til tjenestene i brannmuren for å tillate klientene å koble til:
sudo firewall-cmd --add-service={dns,dhcp}
sudo firewall-cmd --runtime-to-permanent
først installerer bind-utils å få nslookup og grave pakker. Disse lar deg utføre både forover og bakover oppslag. Du kan bruke ping hvis du heller ikke vil installere ekstra pakker. men disse verktøyene er verdt å installere for den ekstra feilsøkingsfunksjonaliteten de kan gi.
sudo dnf install bind-utils
test nå oppløsningen. Test først fremoveroppløsningen (vertsnavn TIL IP-adresse) :
$ nslookup server1Server: 127.0.0.1Address: 127.0.0.1#53Name: server1.mydomain.orgAddress: 192.168.1.20
deretter tester du omvendt (IP-adresse til vertsnavn) oppløsning:
$ nslookup 192.168.1.2020.1.168.192.in-addr.arpa name = server1.mydomain.org.
til Slutt, test løse vertsnavn utenfor nettverket ditt:
$ nslookup fedoramagazine.orgServer: 127.0.0.1Address: 127.0.0.1#53Non-authoritative answer:Name: fedoramagazine.orgAddress: 35.196.109.67
Test DHCP-leieavtaler
for å teste DHCP-leieavtaler må du starte opp en maskin som bruker DHCP til å hente EN IP-adresse. Enhver Fedora-variant vil gjøre det som standard. Når du har startet klientmaskinen, må du kontrollere at den har en adresse og at den tilsvarer leiefilen for dnsmasq.
fra maskinen som kjører dnsmasq:
$ 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
Utvidende funksjonalitet
du kan tilordne verter en fast IP-adresse via DHCP ved å legge den til vertsfilen din med adressen du vil ha(innenfor DHCP-området). Gjør dette ved å legge inn i dnsmasq.conf fil følgende linje, som tilordner IP oppført til en vert som har det navnet:
dhcp-host=myhost
Alternativt kan DU angi EN MAC-adresse som alltid skal gis en fast IP-adresse:
dhcp-host=11:22:33:44:55:66,192.168.1.123
Du kan angi en pxe-oppstartsserver hvis du trenger å automatisere maskinbygginger
tftp-root=/tftpboot
dhcp-boot=/tftpboot/pxelinux.0,boothost,192.168.1.240
dette bør peke på DEN faktiske NETTADRESSEN til TFTP-serveren din.
hvis DU må angi SRV-eller TXT-poster, for EKSEMPEL FOR LDAP, Kerberos eller lignende, kan du legge til disse:
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