Zoeken op website

Een caching DNS-server instellen in Ubuntu Server 14.04


Domain Name Service (DNS) is een naamgevingsservice die IP-adressen en volledig gekwalificeerde domeinnamen aan elkaar toewijst. Computers waarop DNS draait, worden naamservers genoemd.

Hier heb ik de cacheserver geïnstalleerd en geconfigureerd met behulp van forwarder, forward look-up en reserve look-up. In de meeste gevallen hebben we reservezoekopdrachten nodig. De cachingserver bevat geen domeinnamen, maar werkt alleen als een pointingserver. Voordat we dieper ingaan, moeten we meer weten over de DNS-server en hoe deze werkt.

Wat is DNS?

Hier is een eenvoudige manier om de DNS te begrijpen en hoe deze werkt.

Als we linux-console.net in de browser moeten openen, zoekt het systeem naar linux-console.net. Hier aan het einde van .com staat een (.), dus wat is dit?

De (.) vertegenwoordigen de naamruimte Root-server, er zijn in totaal 13 root-servers wereldwijd beschikbaar. Terwijl we linux-console.net bezoeken, wordt gevraagd om de server een naam te geven volgens de configuratie van het besturingssysteem. In Ubuntu configureerden we de naamserver in /etc/resolv.conf, terwijl linux-console.net werd geopend, zal mijn browser vragen om naamservers te rooten, als de rootnaamserver dat niet doet als ik de gevraagde domeininformatie heb, wordt mijn gevraagde informatie in de cache opgeslagen en wordt mijn verzoek doorgestuurd naar de (TLD) Top Level Domain naamserver, zelfs in de TLD-naamserver is mijn verzoek niet beschikbaar wordt het in de cache opgeslagen en doorgestuurd naar de Authoritatieve naamserver.

Tijdens de domeinregistratie zal onze domeinregistreerder bepalen welke gezaghebbende naamserver ons domein moet gebruiken. Gezaghebbende naamservers hebben dus onze domeininformatie, terwijl ons verzoek ANS bereikt, zal het antwoorden op de vraag dat linux-console.net 111.111.222.1 heeft op hetzelfde moment dat het zal zijn in de cache opgeslagen in een gezaghebbende naamserver en stuur het verzoek terug naar de browser. Alle bovenstaande stappen worden binnen milliseconden uitgevoerd.

Ik hoop dat je nu begrijpt wat DNS is en hoe het werkt. Laten we nu een Caching DNS-server instellen in Ubuntu Server 14.04 LTS.

Stap 1: DNS-server installeren

Kijk eerst eens naar de informatie over mijn lokale DNS-server, zoals het statisch IP-adres en de hostnaam, die voor dit artikel wordt gebruikt.

IP Address:	192.168.0.100
Hostname:	dns.tecmintlocal.com

Om te verifiëren dat de bovenstaande instellingen correct zijn, kunnen we de opdrachten ‘hostnamectl’ en ‘ifconfig’ gebruiken.

hostnamectl
ifconfig eth0 | grep inet

Vervolgens werken we de standaardrepository's bij en voeren we een systeemupgrade uit voordat we de DNS-cacheserver instellen.

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

Installeer nu de DNS-pakketten bind en dnsutils met behulp van de volgende opdracht.

sudo apt-get install bind9 dnsutils -y

Nadat dns is geïnstalleerd, gaat u naar de bindconfiguratiemap, onder /etc/bind.

/etc/bind/
ls -l

Stap 2: DNS-cacheserver instellen

Allereerst installeren en configureren we hier de caching-server. Open en bewerk het bestand named.conf.options met de vim-editor.

sudo vim named.conf.options

Nu wordt hier het woord ‘forwarders‘ gebruikt om domeinnaamaanvragen in de cache op te slaan. Dus hier gaan we mijn router als expediteur gebruiken. Verwijder de opmerkingen over de // voor de regel, zoals weergegeven in de afbeelding.

forwarders {
        192.168.0.1;
        };

Sla het bestand op en sluit het af met wq!. Nu is het tijd om de bindserver te starten voor een kleine test.

sudo /etc/init.d/bind9 start

Als we moeten testen of caching werkt, kunnen we dig commando gebruiken en controleren of de cache werkt of niet.

We gaan bijvoorbeeld ubuntu.com nu graven. In eerste instantie zal het geen cache zijn, dus het kan enkele milliseconden duren. Zodra het in de cache is opgeslagen, zal het razendsnel zijn.

dig @127.0.0.1 ubuntu.com

Een dig-opdracht is een hulpmiddel voor DNS-lookups. Lees het onderstaande onderwerp voor meer informatie over het Dig-commando.

  1. 10 Handige voorbeelden van graafopdrachten

Hier kunnen we in de bovenstaande afbeelding zien dat het bij de eerste opgraving 1965 milliseconden duurde voor mijn zoekopdracht en laat zien welk ip-adres is gekoppeld aan ubuntu.com.

Laten we nog een keer proberen te graven en de Query-tijd bekijken.

Cool!, bij de tweede poging kregen we de vraag binnen 5 milliseconden. Ik hoop dat je nu weet wat de cacheserver is. De bovenstaande afbeelding laat zien dat in totaal 13 rootservers Ubuntu.com in de cache opslaan, omdat miljoenen mensen de officiële Ubuntu-site al hebben bezocht.

Stap 3: Master DNS-server instellen

Maak een MASTER DNS-server. Hier definieer ik de domeinnaam als tecmintlocal.com, bewerk het bestand named.conf.local met behulp van de vim-editor.

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

Voer de DNS-Master-invoer in, zoals hieronder weergegeven.

zone "tecmintlocal.com" {
        type master;
        file "/etc/bind/db.tecmintlocal.com";
        };
    1. zone: host details in domein

.

  1. type: Master-DNS.
  2. bestand: locatie waar zone-informatie wordt opgeslagen.

Maak het zonebestand db.tecmintlocal.com (voorwaartse zoekopdrachten) door een kopie te maken van db.local.

sudo cp db.local db.tecmintlocal.com

Open en bewerk nu het gekopieerde zonebestand met de vim-editor.

sudo vim db.tecmintlocal.com

Voeg vervolgens het volgende voorbeelditem toe, dat ik heb gebruikt voor zelfstudiedoeleinden. Ik gebruik hetzelfde ook voor andere virtuele machine-instellingen. Pas de onderstaande invoer aan volgens uw vereisten.

;
; 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.

Sla het bestand op en sluit het af met wq!.

Start ten slotte de bind-DNS-service opnieuw op met behulp van de onderstaande opdracht.

 
sudo service bind9 restart

We moeten bevestigen of onze bovenstaande zone-instelling werkt. Laten we dit controleren met de opdracht dig. Voer de opdracht als volgt uit vanuit de localhost-query.

dig @127.0.0.1 mail.tecmintlocal.com

Laten we pingen en de clt1.tecmintlocal.com testen, daarvoor moeten we de dns-server-invoer wijzigen in localhost op onze dns-servermachine en het netwerk opnieuw opstarten om effect te krijgen .

Open en bewerk de netwerkinterface-instellingen en voer de DNS-invoer in.

sudo vim /etc/network/interfaces

Wijzig de DNS-invoer in de interface, zoals hieronder.

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

Nadat u de invoer hebt toegevoegd, start u het netwerk opnieuw op met de volgende opdracht.

sudo ifdown eth0 && sudo ifup eth0

Als het herstarten van het netwerk geen effect heeft, moeten we opnieuw opstarten. Laten we nu clt1.tecmintlocal.com pingen en controleren. Terwijl deze antwoordt, hebben we het IP-adres nodig dat we hebben gedefinieerd voor hostnaam clt1.

ping clt1.tecmintlocal.com -c 3

Omgekeerde DNS-lookups instellen

Open en bewerk opnieuw het bestand named.conf.local.

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

Voeg nu de volgende reverse DNS-lookup-invoer toe, zoals weergegeven.

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

Sla het bestand op en sluit het af met wq!. Maak nu een db.tecmintlocal192 bestand, zoals ik in het hoofdbestand hierboven heb vermeld voor reverse lookup, kopieer db.127 naar db.tecmintlocal192 met behulp van de volgende opdracht.

sudo cp db.127 db.tecmintlocal192

Open en bewerk nu een bestand db.tecmintlocal192 om de omgekeerde look-up in te stellen.

sudo vim db.tecmintlocal192

Voer de volgende invoer in zoals hieronder, pas de onderstaande invoer aan volgens uw vereisten.

;
; 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.

Start de bindservice opnieuw met behulp van.

Controleer nu de reserve-opzoekinvoer.

host 192.168.0.111

Terwijl we omgekeerd opzoeken met behulp van een IP-adres zoals hierboven weergegeven, wil het antwoorden met een naam zoals bovenstaande afbeelding laat zien.

Laten we ook een controle uitvoeren met de opdracht dig.

dig clt1.tecmintlocal.com

Hier kunnen we het antwoord voor onze vraag in de antwoordsectie zien, aangezien domeinnaam clt1.tecmintlocal.com het ip-adres heeft 192.168.0.111.

Stap 4: Clientmachine instellen

Wijzig gewoon het IP-adres en de DNS-invoer op de clientmachine in Onze lokale DNS-server 192.168.0.100. Als dat zo is, krijgt onze clientmachine een hostnaam toegewezen van de lokale DNS-server.

Laten we de hostnaam van onze client controleren met behulp van de volgende reeks opdrachten.

ifconfig eth0 | grep inet
hostname	
dig -x 192.168.0.100

Inzicht in zonebestandinvoer in dns. Deze afbeelding geeft u een kleine uitleg wat we hebben gedefinieerd in zonebestandinvoer.

Dat is het! in dit artikel hebben we gezien hoe we een lokale DNS-server kunnen instellen voor ons kantoor of thuisgebruik.

Binnenkort kunt u lezen over het artikel over het oplossen van problemen met een DNS-server met behulp van verschillende tools en het repareren ervan. Er zijn veel tools die worden gebruikt om problemen met de DNS-servers op te lossen. Lees het onderstaande artikel voor enkele tips voor probleemoplossing.

8 Nslookup-opdrachten voor DNS-probleemoplossing