Wyszukiwanie w witrynie

Konfigurowanie buforującego serwera DNS w Ubuntu Server 14.04


Usługa nazw domen (DNS) to usługa nazewnictwa, która mapuje między sobą adresy IP i w pełni kwalifikowane nazwy domen. Komputery obsługujące system DNS nazywane są serwerami nazw.

Tutaj zainstalowałem i skonfigurowałem serwer pamięci podręcznej za pomocą usługi przesyłania dalej, wyszukiwania do przodu i wyszukiwania rezerwy. W większości miejsc potrzebujemy poszukiwań rezerwowych. Serwer buforujący nie będzie przechowywać żadnych nazw domen, będzie działał tylko jako serwer wskazujący. Zanim przejdziemy głębiej, musimy wiedzieć o serwerze DNS i jego działaniu.

Co to jest DNS?

Oto prosty sposób na zrozumienie DNS i jego działania.

Jeśli będziemy musieli uzyskać dostęp do witryny linux-console.net w przeglądarce, system wyszuka witrynę linux-console.net. Tutaj na końcu .com będzie (.), więc co to jest?.

(.) reprezentuje przestrzeń nazw Serwer główny. Na całym świecie dostępnych jest łącznie 13 serwerów głównych. Podczas uzyskiwania dostępu do linux-console.net zostanie wyświetlony monit o nazwanie serwera zgodnie z konfiguracją systemu operacyjnego. W Ubuntu konfigurowaliśmy serwer nazw w /etc/resolv.conf, podczas uzyskiwania dostępu do linux-console.net moja przeglądarka poprosi o rootowanie serwerów nazw, jeśli główny serwer nazw tego nie zrobi mieć żądane informacje o domenie, buforuje moje żądane informacje i przekazuje moje żądanie do serwera nazw (TLD) domeny najwyższego poziomu, nawet na serwerze nazw TLD moje żądanie nie jest dostępne, zostaną zapisane w pamięci podręcznej i przesłane do autorytatywnego serwera nazw.

Podczas rejestracji domeny nasz rejestrator domen określi, z którego autorytatywnego serwera nazw powinna korzystać nasza domena. Tak więc wiarygodne serwery nazw mają informacje o naszej domenie, a gdy nasze żądanie dotrze do ANS, odpowie na zapytanie, że linux-console.net ma 111.111.222.1 w tym samym czasie będzie buforowane na autorytatywnym serwerze nazw i wyślij żądanie z powrotem do przeglądarki. Wszystkie powyższe kroki są wykonywane w ciągu milisekund.

Mam nadzieję, że wiesz, czym jest teraz DNS i jak działa. Teraz skonfigurujmy buforujący serwer DNS w Ubuntu Server 14.04 LTS.

Krok 1: Instalacja serwera DNS

Najpierw przejrzyj informacje o moim lokalnym serwerze DNS, takie jak statyczny adres IP i nazwa hosta, które są używane w tym artykule.

IP Address:	192.168.0.100
Hostname:	dns.tecmintlocal.com

Aby sprawdzić, czy powyższe ustawienia są prawidłowe, możemy użyć poleceń „hostnamectl” i „ifconfig”.

hostnamectl
ifconfig eth0 | grep inet

Następnie aktualizujemy domyślne repozytoria i dokonujemy aktualizacji systemu, przed skonfigurowaniem serwera pamięci podręcznej DNS.

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

Teraz zainstaluj pakiety DNS bind i dnsutils, używając następującego polecenia.

sudo apt-get install bind9 dnsutils -y

Po zainstalowaniu dns przejdź do katalogu konfiguracyjnego bind, w /etc/bind.

/etc/bind/
ls -l

Krok 2: Konfigurowanie serwera pamięci podręcznej DNS

Przede wszystkim konfigurujemy tutaj serwer buforujący. Otwórz i edytuj plik named.conf.options za pomocą edytora vim.

sudo vim named.conf.options

Tutaj słowo „przesyłacze” jest używane do buforowania żądań nazw domen. Zatem tutaj użyjemy mojego routera jako spedytora. Odkomentuj // przed linią, jak pokazano na obrazku.

forwarders {
        192.168.0.1;
        };

Zapisz i wyjdź z pliku za pomocą wq!. Teraz czas uruchomić serwer powiązań w celu przeprowadzenia małego testu.

sudo /etc/init.d/bind9 start

Jeśli musimy sprawdzić, czy buforowanie działa, możemy użyć polecenie dig i sprawdzić, czy pamięć podręczna działa, czy nie.

Na przykład, zamierzamy teraz przekopać ubuntu.com, na początku nie będzie to pamięć podręczna, więc może to zająć kilka milisekund, po buforowaniu będzie działać błyskawicznie.

dig @127.0.0.1 ubuntu.com

Polecenie dig to narzędzie do wyszukiwania DNS. Aby dowiedzieć się więcej o poleceniu Dig przeczytaj poniższy temat.

  1. 10 przydatnych przykładów poleceń kopania

Tutaj na powyższym obrazku widać, że pierwsze sprawdzenie zajęło 1965 milisekund i pokazuje, który adres IP jest powiązany z ubuntu.com.

Spróbujmy jeszcze raz wykopać i zobaczyć czas zapytania.

Świetnie! Przy drugiej próbie otrzymaliśmy zapytanie w ciągu 5 milisekund. Mam nadzieję, że wiesz już, co to jest serwer buforujący. Powyższy obraz pokazuje, że ogółem 13 serwerów głównych buforuje Ubuntu.com, ponieważ miliony ludzi odwiedziły już oficjalną stronę Ubuntu.

Krok 3: Ustawianie głównego serwera DNS

Utwórz MASTER serwer DNS. Tutaj definiuję nazwę domeny jako tecmintlocal.com, edytuj plik named.conf.local za pomocą edytora vim.

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

Wprowadź wpis DNS-Master, jak pokazano poniżej.

zone "tecmintlocal.com" {
        type master;
        file "/etc/bind/db.tecmintlocal.com";
        };
    1. strefa: szczegóły hostów w domenie

.

  1. typ: główny DNS.
  2. plik: lokalizacja do przechowywania informacji o strefie.

Utwórz plik strefy db.tecmintlocal.com (wyszukiwanie do przodu) na podstawie kopii z db.local.

sudo cp db.local db.tecmintlocal.com

Teraz otwórz i edytuj skopiowany plik strefy za pomocą edytora vim.

sudo vim db.tecmintlocal.com

Następnie dodaj następujący przykładowy wpis, którego użyłem do celów samouczka. Używam tego samego również do innych konfiguracji maszyn wirtualnych. Zmodyfikuj poniższy wpis zgodnie ze swoimi wymaganiami.

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

Zapisz i wyjdź z pliku za pomocą wq!.

Na koniec zrestartuj usługę bind DNS za pomocą poniższego polecenia.

 
sudo service bind9 restart

Musimy potwierdzić, czy powyższa konfiguracja strefy działa. Sprawdźmy za pomocą polecenia dig. Uruchom polecenie w następujący sposób z zapytania localhost.

dig @127.0.0.1 mail.tecmintlocal.com

Pingujmy i przetestujmy clt1.tecmintlocal.com, wcześniej musimy zmienić wpis serwera dns na localhost na naszym serwerze dns i ponownie uruchomić sieć, aby uzyskać efekt .

Otwórz i edytuj ustawienia interfejsu sieciowego i wprowadź wpis DNS.

sudo vim /etc/network/interfaces

Zmień wpis DNS w interfejsie jak poniżej.

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

Po dodaniu wpisu zrestartuj sieć za pomocą następującego polecenia.

sudo ifdown eth0 && sudo ifup eth0

Jeśli ponowne uruchomienie sieci nie przyniesie skutku, konieczne jest ponowne uruchomienie. Teraz zapingujmy i sprawdźmy witrynę clt1.tecmintlocal.com, podczas gdy ta odpowiada, musimy uzyskać adres IP taki, jaki zdefiniowaliśmy dla nazwy hosta clt1.

ping clt1.tecmintlocal.com -c 3

Ustawianie wyszukiwania wstecznego DNS

Ponownie otwórz i edytuj plik named.conf.local.

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

Teraz dodaj następujący wpis wyszukiwania wstecznego DNS, jak pokazano.

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

Zapisz i wyjdź z pliku za pomocą wq!. Teraz utwórz plik db.tecmintlocal192, jak wspomniałem w powyższym pliku głównym w celu wyszukiwania wstecznego, skopiuj plik db.127 do db.tecmintlocal192 za pomocą następującego polecenia.

sudo cp db.127 db.tecmintlocal192

Teraz otwórz i edytuj plik db.tecmintlocal192, aby skonfigurować wyszukiwanie wsteczne.

sudo vim db.tecmintlocal192

Wprowadź następujący wpis jak poniżej, zmodyfikuj poniższy wpis zgodnie ze swoimi wymaganiami.

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

Uruchom ponownie usługę wiązania za pomocą.

Teraz sprawdź wpis wyszukiwania rezerwy.

host 192.168.0.111

Chociaż wykonujemy wyszukiwanie wsteczne przy użyciu adresu IP, jak pokazano powyżej, chcemy odpowiedzieć nazwą, jak pokazuje powyższy obrazek.

Sprawdźmy również za pomocą polecenia dig.

dig clt1.tecmintlocal.com

Tutaj możemy zobaczyć odpowiedź na nasze zapytanie w sekcji odpowiedzi, ponieważ nazwa domeny clt1.tecmintlocal.com ma adres IP 192.168.0.111.

Krok 4: Konfigurowanie komputera klienckiego

Po prostu zmień adres IP i wpis dns na komputerze klienckim na Nasz lokalny serwer DNS 192.168.0.100, jeśli tak, naszemu komputerowi klienckiemu zostanie przypisana nazwa hosta z lokalnego serwera DNS.

Sprawdźmy nazwę hosta naszego klienta za pomocą następującej serii poleceń.

ifconfig eth0 | grep inet
hostname	
dig -x 192.168.0.100

Zrozumienie wpisu pliku strefy w dns. Ten obraz daje małe wyjaśnienie, co zdefiniowaliśmy we wpisie pliku strefy.

Otóż to! w tym artykule widzieliśmy, jak skonfigurować lokalny serwer DNS do użytku w naszym biurze lub w domu.

Już niedługo przeczytacie artykuł o tym jak rozwiązać problem z serwerem DNS za pomocą różnych narzędzi i go naprawić. Istnieje wiele narzędzi używanych do rozwiązywania problemów z serwerami DNS. Przeczytaj poniższy artykuł, aby poznać wskazówki dotyczące rozwiązywania problemów.

8 poleceń Nslookup do rozwiązywania problemów z DNS