DNS (Domain Name Service)

Domain Name Service (DNS) er en Internett-tjeneste som tilordner IP-adresser og fullt kvalifisert domenenavn (FQDN) til en annen. På denne måten, DNS reduserer behovet for å huske IP-adresser. Datamaskiner som kjører DNS kalles navnetjenere. Ubuntu skip med BIND (Berkley Internet Naming Daemon), den mest vanlige program som brukes for å opprettholde et navn server på Linux.,

På en terminal prompt skriver du inn følgende kommando for å installere dns:

sudo apt install bind9

En svært nyttig pakke for testing og feilsøking DNS-problemer er dnsutils pakken. Svært ofte er disse verktøyene vil bli installert allerede, men for å kontrollere og/eller installere dnsutils angi følgende:

sudo apt install dnsutils

Konfigurering

Det er mange måter å konfigurere BIND9. Noen av de vanligste konfigurasjonene er en caching nameserver, primær-server og sekundær server.,

  • Når den er konfigurert som en caching nameserver BIND9 vil finne svaret på navnet spørsmål og huske svaret når domenet er avhørt igjen.

  • Som en primær server, BIND9 leser data for en sone fra en fil på sin vert og er autoritativ for denne sonen.

  • Som en sekundær server, BIND9 får sone data fra en annen dns som er autoritativ for sonen.

Oversikt

DNS-konfigurasjonen filer som er lagret i /etc/bind – katalogen., Den primære konfigurasjonsfilen er /etc/bind/named.conf, som i oppsettet gitt av pakken som bare inneholder disse filene.

roten navnetjenere som brukes til å være beskrevet i filen /etc/bind/db.root. Dette er nå i stedet gitt av /usr/share/dns/root.hints – filen som fulgte med dns-root-data pakken, og er referert i named.conf.default-zones konfigurering-filen ovenfor.

Det er mulig å konfigurere den samme serveren til å være en caching server navn, primær og sekundær: det hele avhenger av soner det er servering., En server kan være Starten på en Autoritet (SOA) for én sone, samtidig som det gir sekundær tjeneste for en annen sone. Samtidig gir caching tjenester for vertene på den lokale LAN.

Caching Dns

standard konfigurasjon fungerer som en caching server. Bare uncomment og redigere /etc/bind/named.conf.options for å angi IP-adressene til din ISP ‘ s DNS-servere:

forwarders { 1.2.3.4; 5.6.7.8;};

Merk

Bytt 1.2.3.4 og 5.6.7.8 med IP-Adresser av faktiske navnetjenere.,

for Å aktivere den nye konfigurasjonen, starte DNS-serveren. Fra en terminal-ledeteksten:

sudo systemctl restart bind9.service

Se grave etter informasjon om testing av en caching DNS-serveren.

Primære Serveren

I denne delen BIND9 vil bli konfigurert som den Primære serveren for domenet example.com. Bare bytt example.com med FQDN (Fully Qualified Domain Name).,

Videresend Sone Fil

for Å legge til en DNS-sone for å BIND9, snu BIND9 inn en Primær server, redigerer /etc/bind/named.conf.local:

zone "example.com" { type master; file "/etc/bind/db.example.com";};

Merk

Hvis binde vil motta automatiske oppdateringer til filen som med DDNS, deretter kan du bruke /var/lib/bind/db.example.com snarere enn /etc/bind/db.example.com både her og i copy-kommandoen nedenfor.,

Nå kan du bruke en eksisterende sone fil som en mal for å opprette /etc/bind/db.example.com fil:

sudo cp /etc/bind/db.local /etc/bind/db.example.com

Rediger den nye sonen filen /etc/bind/db.example.com bytt localhost. for å FQDN av din server, forlater ytterligere . på slutten., Endre 127.0.0.1 til dns IP-Adressen og root.localhost til en gyldig e-post adresse, men med en . i stedet for den vanlige @ symbol, igjen forlater . på slutten. Endre kommentar for å angi domenet at denne filen er for.

Opprette en rekord for base domene, example.com. Også, kan du opprette en rekord for ns.example.com, navnet server i dette eksemplet:

Du må tilvekst Serienummeret hver gang du gjør endringer i sonefilen., Hvis du gjør flere endringer før du starter BIND9, rett og slett tilvekst Seriell gang.

Nå kan du legge til DNS-postene til bunnen av sonefilen. Se Vanlige oppføringstyper for detaljer.,

Merk

Mange administratorer liker å bruke den siste datoen endret som føljetong av en sone, for eksempel 2020012100 som er yyyymmddss (der ss er Serienummeret)

Når du har gjort endringer i sonefilen BIND9 må startes på nytt for at endringene skal tre i kraft:

sudo systemctl restart bind9.service

Omvendt Sone Fil

Nå at sonen er oppsett og løse navn til IP-Adresser, en Omvendt sone behov for å bli lagt til lar DNS for å løse en adresse til et navn.,

Rediger /etc/bind/named.conf.local og legg til følgende:

zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/db.192";};

Merk

Bytt 1.168.192 med de tre første oktettene av hva nettverket du bruker. Også navn på sonen filen /etc/bind/db.192 hensiktsmessig. Det bør samsvare med den første oktetten av nettverket.,

Nå opprette /etc/bind/db.192 file:

sudo cp /etc/bind/db.127 /etc/bind/db.192

Neste rediger /etc/bind/db.192 endre samme valgene som /etc/bind/db.example.com:

Serienummeret på baksiden sone må økes på hver endring som godt. For hver En oppføring du vil konfigurere i /etc/bind/db.example.com, som er en annen adresse, må du opprette en PTR-post i /etc/bind/db.192.,

Etter å skape omvendt sone fil BIND9 restart:

sudo systemctl restart bind9.service

Sekundær Server

Når et Primære Serveren ikke er konfigurert på en Sekundær Server er sterkt anbefalt for å opprettholde tilgjengeligheten av domenet bør den Primære bli utilgjengelig.

Først, på den Primære serveren, sonen overføre behov for å være tillatt., Legg til allow-transfer alternativ til eksempel Fremover og Bakover sone definisjoner i /etc/bind/named.conf.local:

Merk

Bytt 192.168.1.11 med IP-Adressen til den Sekundære dns.

BIND9 Restart på Primær-server:

sudo systemctl restart bind9.service

Neste, på den Sekundære server, installere bind9 pakke samme måte som den Primære., Deretter rediger /etc/bind/named.conf.local og legg til følgende erklæringer for Forover og Bakover soner:

Merk

Bytt 192.168.1.10 med IP-Adressen til den Primære dns.,

BIND9 Restart på Sekundær server:

sudo systemctl restart bind9.service

I /var/log/syslog bør du se noe som ligner på følgende (noen linjer har blitt delt for å passe formatet i dette dokumentet):

Merk

Merk: En sone er bare overføres hvis Serienummeret på den Primære er større enn på Videregående., Hvis du ønsker å ha den Primære DNS-varsle andre Sekundære DNS-Servere av sone endringer, kan du legge til also-notify { ipaddress; }; til /etc/bind/named.conf.local som vist i eksemplet nedenfor:

Merk

standard katalog for ikke-autoritativt sone-filene er /var/cache/bind/. Denne katalogen er også konfigurert i AppArmor å tillate heter daemon til å skrive til den. For mer informasjon om AppArmor se Security – AppArmor.,

Feilsøking

Denne delen dekker diagnostisere problemer med DNS og BIND9 konfigurasjoner.

– Testing

resolv.conf

Det første trinnet i å teste BIND9 er å legge til dns IP-Adresse til en vert resolver. Den Primære dns bør være konfigurert samt annen vert å dobbeltsjekke ting. Se DNS-klient konfigurasjon for informasjon om å legge til navneserver-adressene til nettverket kunder., I slutten din nameserver line i /etc/resolv.conf skal peke på 127.0.0.53 og du bør ha en search parameter for ditt domene. Noe sånt som dette:

nameserver 127.0.0.53search example.com

Hvis du vil sjekke hvilken DNS-server på ditt lokale resolver bruker, kjører du:

systemd-resolve --status

Merk

Du bør også legge til IP-Adressen til den Sekundære dns til din klient konfigurasjon i tilfelle den Primære blir utilgjengelig.,

grave

Hvis du har installert dnsutils pakken kan du teste dine oppsett ved å bruke DNS-oppslag utility grave:

  • Etter at du har installert BIND9 bruk grave mot loopback-grensesnitt for å sørge for at det er å lytte på port 53.,jeg>

    Hvis du har konfigurert BIND9 som en Caching nameserver «grave» et eksternt domene for å sjekke spørringen tid:

    dig ubuntu.com

    Merk spørringen tid mot slutten av kommandoen utgang:

    ;; Query time: 49 msec

    Etter at en annen grave det bør være en forbedring:

    ;; Query time: 1 msec

ping

Nå, for å vise hvordan applikasjoner gjøre bruk av DNS for å løse et vertsnavn bruk ping-verktøyet til å sende en ICMP echo request:

ping example.com

Dette tester om navneserveren kan løse navnet ns.example.com til en IP-Adresse., Kommandoen utgang, bør ligne:

oppkalt-checkzone

En flott måte å teste din sone-filer ved å bruke named-checkzone utility er installert med bind9 pakken. Dette verktøyet lar deg kontrollere konfigurasjonen er riktig, før du starter BIND9 og gjør endringene.,

  • for Å teste vårt eksempel Frem zone-filen skriver du inn følgende fra ledeteksten:

    named-checkzone example.com /etc/bind/db.example.com

    Hvis alt er konfigurert riktig, bør du se output lik:

    zone example.com/IN: loaded serial 6OK
  • på samme måte, å teste Omvendt sone fil, angi følgende:

    named-checkzone 1.168.192.in-addr.arpa /etc/bind/db.192

    output skal være lik:

    zone 1.168.192.in-addr.arpa/IN: loaded serial 3OK

Merk

Serienummeret til din zone-filen vil trolig være annerledes.,

Rask midlertidig spørring logging

Med rndc verktøyet, kan du raskt slå spørring logge på og av, uten å måtte starte tjenesten eller endre konfigurasjonen fil.

for Å slå spørring å logge på, kan du kjøre:

sudo rndc querylog on

på samme måte, for å slå den av, kjører du:

sudo rndc querylog off

logger vil bli sendt til syslog, og den vises i /var/log/syslog standard:

Merk

mengden av tømmer som er generert ved å aktivere querylog kan være enorme!,

Logging

BIND9 har et bredt utvalg av logging konfigurasjon alternativer, men de to viktigste er kanal og kategori, som konfigurere hvor logger gå, og hvilken informasjon som blir logget, henholdsvis.

Hvis ingen alternativer for logging er konfigurert for standard konfigurasjon er:

logging { category default { default_syslog; default_debug; }; category unmatched { null; };};

La oss i stedet konfigurere BIND9 å sende debug meldinger relatert til DNS-spørringer til en separat fil.

Vi trenger å konfigurere en kanal for å spesifisere hvilke filer du vil sende meldingene til, og en kategori., I dette eksemplet kategorien vil logge alle henvendelser. Edit /etc/bind/named.conf.local og legg til følgende:

logging { channel query.log { file "/var/log/named/query.log"; severity debug 3; }; category queries { query.log; };};

Merk

debug-alternativet kan stilles inn fra 1 til 3. Hvis et nivå som ikke er spesifisert, nivå 1 er standard.,

  • Siden som heter daemonen kjører som binder brukeren /var/log/named katalogen må være opprettet og eierskap endret:

    sudo mkdir /var/log/namedsudo chown bind:bind /var/log/named
  • Nå BIND9 restart for at endringene skal tre i kraft:

    sudo systemctl restart bind9.service

Du bør se filen /var/log/named/query.log fyll opp med spørringen informasjon. Dette er et enkelt eksempel på BIND9 logging alternativer. For dekning av avanserte alternativer kan du se Mer Informasjon.,

Vanlige oppføringstyper

Denne delen dekker noen av de vanligste DNS-oppføringstyper.

  • A spill inn: Denne posten kart en IP-Adresse til et vertsnavn.

    www IN A 192.168.1.12
  • CNAME spill inn: Brukes til å opprette et alias til en eksisterende En oppføring. Du kan ikke opprette en CNAME spill inn peker til en annen CNAME spill inn.

    web IN CNAME www
  • MX spill inn: Brukes for å angi hvor e-posten skal sendes til., Må peke til en A spill inn, ikke en CNAME.

    @ IN MX 1 mail.example.com.mail IN A 192.168.1.13
  • NS spill inn: Brukes for å definere hvilke servere tjene kopier av en sone. Det må peke til en A spill inn, ikke en CNAME. Dette er hvor Primær-og Sekundær-servere er definert.

    @ IN NS ns.example.com.@ IN NS ns2.example.com.ns IN A 192.168.1.10ns2 IN A 192.168.1.11

få Mer Informasjon

  • Oppstrøms BIND9 Dokumentasjon

  • Bind9.net har lenker til en stor samling av DNS og BIND9 ressurser.,

  • DNS og BIND er en populær bok nå i det femte utgaven. Det er nå også en DNS og BINDER på IPv6-bok.

  • Et flott sted å be for BIND9 hjelp, og bli involvert med Ubuntu Server samfunnet, er #ubuntu-server IRC kanal på freenode.

Sist oppdatert 10 måneder siden. Bidra til å forbedre dette dokumentet i forumet.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

Hopp til verktøylinje