Opsætning af en caching DNS-server i Ubuntu Server 14.04


Domain Name Service ( DNS ) er en navngivningstjeneste, der kortlægger IP-adresser og fuldt kvalificerede domænenavne til hinanden. Computere, der kører DNS, kaldes navneservere.

Her har jeg installeret og konfigureret cache-server ved hjælp af videresendere, frem-opslag og reserveopslag. På det meste af stedet har vi brug for reserveopslag. Caching-server indeholder ikke nogen domænenavne, den fungerer kun som en pegningsserver. Før vi går i dybden, skal vi vide om DNS-serveren, og hvordan den fungerer.

Her er en nem måde at forstå DNS og hvordan det fungerer.

Hvis vi har brug for adgang til linux-console.net i browseren, vil systemet se efter linux-console.net . Her i slutningen af .com vil der være en (. ), så hvad er dette?.

(.) repræsenterer navneområdet Rootserver, der er i alt 13 rodservere globalt tilgængelige. Mens vi åbner linux-console.net , beder den om at navngive serveren pr. Operativsystemkonfiguration. I Ubuntu plejede vi at konfigurere navneserveren i /etc/resolv.conf , mens jeg åbner linux-console.net, vil min browser bede om at rodnavneservere, hvis rodnavneserveren ikke har mine anmodede domæneoplysninger, vil det cache mine anmodede oplysninger og videresende min anmodning til ( TLD ) Topniveau domæne navneserver, selv i TLD navneserver er min anmodning ikke tilgængelig, cachelagres den og videresendes til autoritativ navneserver.

Mens domæneregistreringen vil vores domæneregistrer definere, hvilken autoritativ navneserver, vores domæne skal bruge. Så autoritative navneservere har vores domæneoplysninger, mens vores anmodning når ANS, svarer den for forespørgslen om, at linux-console.net har 111.111.222.1 på samme tid, det vil være cache i autoritativ navneserver og sende anmodningen tilbage til browseren. Alle ovenstående trin udføres inden for millisekunder.

Håber du har hvad der er DNS nu, og hvordan det fungerer. Lad os nu oprette en Caching DNS-server i Ubuntu Server 14.04 LTS.

Trin 1: Installation af DNS-server

Se først på mine lokale DNS-serveroplysninger såsom statisk IP-adresse og værtsnavn, som bruges til denne artikel.

IP Address:	192.168.0.100
Hostname:	dns.tecmintlocal.com

For at kontrollere, at ovenstående indstillinger er korrekte, kan vi bruge kommandoerne ' hostnamectl ' og 'ifconfig'.

$ hostnamectl
$ ifconfig eth0 | grep inet

Dernæst opdaterer vi standardopbevaringsstederne og foretager en systemopgradering, inden vi opretter DNS-cache-server.

$ sudo apt-get update && sudo apt-get upgrade -y

Installer nu DNS-pakkerne bind og dnsutils ved hjælp af følgende kommando.

$ sudo apt-get install bind9 dnsutils -y

Når dns er installeret, skal du flytte til bindkonfigurationsmappen under /etc/bind .

$ /etc/bind/
$ ls -l

Trin 2: Indstilling af DNS-cache-server

Først og fremmest konfigurerer og konfigurerer vi cacheserver her. Åbn og rediger filen named.conf.options ved hjælp af vim editor.

$ sudo vim named.conf.options

Her bruges ordet ' videresendere ' til at cache domænenavneanmodninger. Så her skal vi bruge min router som videresenderen. Fjern kommentar/foran linjen som vist på billedet.

forwarders {
        192.168.0.1;
        };

Gem og afslut filen ved hjælp af wq! . Nu er det tid til at starte bindingsserveren til en lille test.

$ sudo /etc/init.d/bind9 start

Hvis vi har brug for at teste, om caching fungerer, kan vi bruge gravekommando og kontrollere, om cachen fungerer eller ej.

For eksempel vil vi grave ubuntu.com nu, i første omgang vil det ikke være cache, så det kan tage nogle millisekunder, når det er cache, vil det være i lynhastighed.

$ dig @127.0.0.1 ubuntu.com

En gravekommando er et værktøj til DNS-opslag. For at vide mere om Dig-kommandoen, læs nedenstående emne.

  1. 10 nyttige eksempler på Dig Command

Her kan vi se i ovenstående billede ved første udgravning, at det tog 1965 millisekunder for min forespørgsel og viser, hvilken ipaddress der er bundet til ubuntu.com .

Lad os prøve at grave endnu en gang og se forespørgselstiden.

Cool !, I det andet forsøg fik vi forespørgslen inden for 5 millisekunder. Håber du ved, hvad der er cache-server nu. Ovenstående billede viser, at i alt 13 rodservere cachelager Ubuntu.com, fordi millioner af mennesker allerede har åbnet Ubuntu officielle side.

Trin 3: Indstilling af master DNS-server

Opret en MASTER DNS-server. Her definerer jeg domænenavnet som tecmintlocal.com , rediger filen named.conf.local ved hjælp af vim editor.

$ sudo vim /etc/bind/named.conf.local

Indtast DNS-Master -posten som vist nedenfor.

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

    1. zone : Oplysninger om værter i domæne

    .

    1. type : Master DNS.
    2. fil : Placering for at gemme zoneoplysninger.

    Opret zonefilen db.tecmintlocal.com (Opslag fremad) fra at lave en kopi fra db.local .

    $ sudo cp db.local db.tecmintlocal.com
    

    Åbn og rediger nu den kopierede zonefil ved hjælp af vim editor.

    $ sudo vim db.tecmintlocal.com
    

    Dernæst tilføj følgende eksempelpost, som jeg har brugt til tutorialsformål. Jeg bruger det samme til andre opsætninger på virtuel maskine. Rediger nedenstående post i henhold til dit krav.

    ;
    ; BIND data file for local loopback interface
    ;
    $TTL    604800
    @       IN      SOA     tecmintlocal.com. root.tecmintlocal.com. (
                         2014082801         ; Serial
                             604800         ; Refresh
                              86400         ; Retry
                            2419200         ; Expire
                             604800 )       ; Negative Cache TTL
    ;
    @       IN      NS      ns.tecmintlocal.com.
    ns      IN      A       192.168.0.100
    
    clt1    IN      A       192.168.0.111
    ldap    IN      A       192.168.0.200
    ldapc   IN      A       192.168.0.211
    mail    IN      CNAME   clt1.tecmintlocal.com.
    

    Gem og afslut filen ved hjælp af wq! .

    Til sidst, genstart bind DNS-tjenesten ved hjælp af nedenstående kommando.

     
    $ sudo service bind9 restart
    

    Vi er nødt til at bekræfte, om vores ovenstående zoneopsætning fungerer. Lad os kontrollere ved hjælp af grave kommandoen. Kør kommandoen som følger fra localhost-forespørgsel.

    $ dig @127.0.0.1 mail.tecmintlocal.com
    

    Lad os pinge og teste clt1.tecmintlocal.com , inden det er nødvendigt at ændre dns-serverindgangen til localhost i vores dns-servermaskine og genstarte netværket for at få effekt .

    Åbn og rediger indstillingerne for netværksgrænsefladen, og indtast DNS-posten.

    $ sudo vim /etc/network/interfaces
    

    Skift DNS-posten i grænsefladen som nedenfor.

    auto lo
    iface lo inet loopback
    auto eth0
    iface eth0 inet static
            address 192.168.0.100
            netmask 255.255.255.0
            gateway 192.168.0.1
            network 192.168.0.0
            broadcast 192.168.0.255
            dns-nameservers 127.0.0.1
    	    dns-search tecmintlocal.com
    

    Efter tilføjelse af post skal du genstarte netværket ved hjælp af følgende kommando.

    $ sudo ifdown eth0 && sudo ifup eth0
    

    Hvis genstart af netværk ikke træder i kraft, skal vi have en genstart. Lad os nu pinge og kontrollere clt1.tecmintlocal.com , mens det svarer, er vi nødt til at få ip-adressen, hvad vi definerede for værtsnavn clt1 .

    $ ping clt1.tecmintlocal.com -c 3
    

    Indstilling af omvendte DNS-opslag

    Åbn igen og rediger filen named.conf.local .

    $ sudo vim /etc/bind/named.conf.local
    

    Tilføj nu følgende omvendte dns-opslagspost som vist.

    zone "0.168.192.in-addr.arpa" {
            type master;
            notify no;
            file "/etc/bind/db.tecmintlocal192";
            };
    

    Gem og afslut filen ved hjælp af wq! . Opret nu en db.tecmintlocal192 fil, som jeg har nævnt i masterfilen ovenfor til omvendt opslag, kopier db.127 til db.tecmintlocal192 ved hjælp af følgende kommando.

    $ sudo cp db.127 db.tecmintlocal192
    

    Åbn og rediger nu en fil db.tecmintlocal192 til opsætning af det omvendte opslag.

    $ sudo vim db.tecmintlocal192
    

    Indtast følgende post som nedenfor, rediger nedenstående post i henhold til dit krav.

    ;
    ; BIND reverse data file for local loopback interface
    ;
    $TTL    604800
    @       IN      SOA     ns.tecmintlocal.com. root.tecmintlocal.com. (
                            2014082802      ; Serial
                             604800         ; Refresh
                              86400         ; Retry
                            2419200         ; Expire
                             604800 )       ; Negative Cache TTL
    ;
    @       IN      NS      ns.
    100     IN      PTR     ns.tecmintlocal.com.
    
    111     IN      PTR     ctl1.tecmintlocal.com.
    200     IN      PTR     ldap.tecmintlocal.com.
    211     IN      PTR     ldapc.tecmintlocal.com.
    

    Genstart bindetjenesten ved hjælp af.

    Bekræft nu posten til reservesøgning.

    $ host 192.168.0.111
    

    Mens vi foretager et omvendt opslag ved hjælp af en ip-adresse som vist ovenfor, vil den svare med et navn som vist ovenfor.

    Lad os også kontrollere ved hjælp af dig-kommandoen.

    $ dig clt1.tecmintlocal.com
    

    Her kan vi se svaret for vores forespørgsel i svarafsnittet som domænenavn clt1.tecmintlocal.com har IP-adressen 192.168.0.111 .

    Trin 4: Indstilling af klientmaskine

    Du skal bare ændre ip-adressen og dns-posten i klientmaskinen til vores lokale dns-server 192.168.0.100 , i så fald får vores klientmaskine tildelt værtsnavn fra den lokale DNS-server.

    Lad os kontrollere værtsnavnet på vores klient ved hjælp af følgende række kommandoer.

    $ ifconfig eth0 | grep inet
    $ hostname	
    $ dig -x 192.168.0.100
    

    Forståelse af zone-filindtastning i dns. Dette billede giver dig en lille forklaring på, hvad vi har defineret i zone-filindtastning.

    Det er det! i denne artikel har vi set hvordan man opsætter en lokal DNS-server til vores kontor- eller hjemmebrug.

    Snart kan du læse om artiklen, hvordan du foretager fejlfinding af en DNS-server ved hjælp af forskellige værktøjer og retter den. Der er mange værktøjer, der bruges til fejlfinding af DNS-serverne. Læs nedenstående artikel for at vide om nogle tip til fejlfinding.

    8 Nslookup-kommandoer til DNS-fejlfinding