Setup Master-Slave-DNS-Server mit Bind -Tools in RHEL/Centos 6 einstellen.5

Setup Master-Slave-DNS-Server mit Bind -Tools in RHEL/Centos 6 einstellen.5

Domänenname -Server (DNS) verwendet für die Namensauflösung für alle Hosts. Master DNS -Server (Primärserver) sind die ursprünglichen Zonendatenhandler und Slave -DNS -Server (Sklaven -DNS -Server (Sekundärserver) sind nur ein Backup -Server, mit dem die gleichen Zoneninformationen von den Master -Servern kopiert werden. Der Master Server löst die Namen für alle Hosts, die wir in der Zonendatenbank definiert haben. DNS -Server verwenden auch UDP -Protokolle, um die Abfrageanforderung frühestens aufzulösen.

Setup Master Slave DNs in RHEL/Centos 6.5

Wie DNS funktioniert?

Das Verständnis von DNS könnte für Neulinge wenig verwirrend sein. Hier ist eine kurze Erklärung, wie der DNS funktioniert.

Nehmen wir an, wenn wir auf eine Website zugreifen müssen, was wir tun werden? Schreib einfach www.Google.com im Browser und drücken Sie die Eingabetaste. Hmm das ist alles, was wir wissen, aber Tatsache ist, wie Schmerz DNs durchgehen, während wir uns für uns abfragen. Während wir www eingeben.Google.com das System wird nach www suchen.Google.com. Wann immer wir einen Domain -Namen eingeben, gibt es eine . (Punkt) am Ende des www.Google.com, die sagen, um den Root -Server des Namespace zu durchsuchen.

Weltweit gibt es 13 Wurzelserver verfügbar, um die Abfrage zu beheben. Während wir als www eintraten, drückten wir zunächst.Google.com Our Browser übergeben eine Anfrage an unseren lokalen Resolver, der Einstieg zu unseren Master- und Slave -DNS -Serverinformationen enthält. Wenn sie keine Informationen über eine solche angeforderte Abfrage haben, übergeben sie die Anfrage an die Domäne auf der obersten Ebene (Tld) Wenn TLD sagt, dass ich die Anfrage nicht kenne, kann der maßgebliche Server Ihre Anfrage wissen. Sie leitet sich an maßgebliche Server weiter, hier nur www.Google.com wurde als Adresse 72 definiert.36.15.56.

In der Zwischenzeit gibt der autoritative Server die Antwort auf TLD und TLD übergeben an Root Server und Root bietet die Informationen an den Browser. Daher wird der Browser die DNS -Anfrage für zukünftige Verwendung zwischenspeichert. Daher werden sich dieser lange Prozess nur in Millisekunden auflösen. Wenn sie die Anfrage nicht kennen, antworten sie als NxDomain. Das heißt, in der Zonendatenbank gibt es keine Aufzeichnungen. Ich hoffe, Sie verstehen, wie der DNS funktioniert.

Lesen Sie auch: Setup DNS -Cache -Server in Ubuntu einrichten

Meine Testumgebung

Für diesen Artikel verwende ich 3 Maschinen, 2 für Server -Setup (Master und Slave) und 1 für den Client.

--------------------------------------------------- Master DNS -Server --------------------------------------------------- IP -Adresse: 192.168.0.200 Hostname: Masterdns.tecmintlocal.com os: centos 6.5 Finale 
--------------------------------------------------- Sklaven -DNS -Server --------------------------------------------------- IP -Adresse: 192.168.0.201 Hostname: Slavedns.tecmintlocal.com os: centos 6.5 Finale 
--------------------------------------------------- Client -Maschine zur Verwendung von DNS --------------------------------------------------- IP -Adresse: 192.168.0.210 Hostname: Node1.tecmintlocal.com os: centos 6.5 Finale 
Anforderungspakete
Bind, Bind-Utils, Bind-Chroot 
Konfigurationsdateien verwendet
Konfigurationsdatei: /etc /benannt.Conf Skript -Datei: /etc /init.d/benannt 
Port & Protokolle verwendet
53, UDP

Setup Master DNS -Server einrichten

Überprüfen Sie zunächst die IP -Adresse, die Hostname und die Verteilungsversion von Master DNS Server, bevor Sie sich für das Setup vorstellen.

$ sudo ifconfig | grep inet $ hostname $ cat /etc /redhat-release 
Überprüfen Sie die Master -Konfiguration

Einmal bestätigen Sie, dass die oben genannten Einstellungen korrekt sind. Es ist an der Zeit, die erforderlichen Pakete voranzutreiben zu können.

$ sudo yum install bind* -y 
BIND -Paket installieren

Installieren und Konfigurieren von Bind

Definieren Sie nach der Installation der erforderlichen Pakete Zonendateien nun in der Master -Konfiguration 'genannt.Conf' Datei.

$ sudo vim /etc /benannt.Conf 

Unten angegeben ist mein genannt.Conf Dateieingabe, ändern Sie die Konfigurationsdatei gemäß Ihrem Bedarf.

// // genannt.conf // // bereitgestellt von Red Hat Bind -Paket, um den isc bind namens (8) DNS // Server als nur als Caching -Nameserver zu konfigurieren (nur als Localhost DNS -Resolver). // // siehe/usr/share/doc/bind*/sample/zum Beispiel benannte Konfigurationsdateien. // Optionen Anhörensport 53  127.0.0.1; 192.168.0.200; ; # Hier müssen wir unseren Master DNS Server IP hinzufügen. Anhören-V6 Port 53 :: 1; ; Verzeichnis "/var/named"; Dump-file "/var/named/data/cache_dump.DB "; Statistics-File"/var/named/data/named_stats.txt "; memstatistics-file"/var/named/data/named_mem_stats.txt ";.168.0.0/24; ; # Subnetzbereich, in dem meine Hosts unseren DNS abfragen dürfen. transfer  Lokalhost; 192.168.0.201; ; # Hier brauchen wir an unserem Slave DNS Server IP IP. Rekursion Nr; DNSSEC-ENBABE JA; DNSSEC-VALIDATION JA; DNSSEC-Lookaside Auto; / * Pfad zum ISC-DLV-Schlüssel */Bindkeys-file "/etc/namens.iscdlv.Schlüssel "; Managed-Keys-Directory"/var/named/dynamic ";; Protokollierung Kanal default_debug file" Daten/Namen.rennen "; Schweregrad dynamisch;;; Zone"."In Type tipp; Datei" benannt ".ca ";; ## Definieren Sie hier unsere Forward & Reverse -Zone -Datei für Tecmintlocal.com. Zone"tecmintlocal.com"In Type Master; Datei" "tecmintlocal.FWD.Zone";0.168.192.In-Addr.ARPA"In Type Master; Datei" "tecmintlocal.rev.Zone"; zulässt update none;;; ##### include"/etc/genannt.RFC1912.Zonen "; inklusive"/etc/benannt.Wurzel.Taste"; 
Zonendatei in DNS erstellen

Im Folgenden finden Sie die Erläuterung jeder Konfiguration, die wir in der obigen Datei verwendet haben.

  1. Hören Sie Port 53 an - Dies wird für die DNS verwendet, um in verfügbaren Schnittstellen zuzuhören.
  2. Master DNS - Definieren Sie Ihre Master -DNS -IP -Adresse, um die Abfrage anzuhören.
  3. Sklaven -DNS - Definieren Sie Ihren Sklaven -DNS, der verwendet wird, um unsere Zoneninformationen zu synchronisieren, um die Hosts vom Master zu beheben.
  4. Rekursion Nr - Wenn es auf ja festgelegt ist, machen rekursive Abfragen den Server zu einem DDOS -Angriff.
  5. Zonenname - Definieren Sie Ihren Zonennamen hier als TecminLocal definiert.com.
  6. Typ Master - Da dieses System für einen Master -Server konfiguriert wurde, ist dies für den kommenden Slave -Server Slave.
  7. tecmintlocal.FWD.Zone - Diese Datei enthält die Hostinformationen für diese Zone.
  8. update keine - Wenn keiner festgelegt wird. Es wird keine dynamischen DNS (DDNs) verwendet.

Erstellen von Master -Zonendateien

Lassen Sie uns zunächst die Einstiegsanbieter der Stürmershook-up-Zone definieren. Hier müssen wir die Zonendateien im Namen dessen erstellen, was wir in der definiert haben genannt.Conf Datei wie unten.

tecmintlocal.FWD.Zone Tecminintlocal.rev.Zone 

Wir verwenden Beispielkonfigurationsdateien zum Erstellen von Weiterleitungszonendateien, um die Beispielkonfigurationsdateien zu kopieren.

$ sudo cp/var/benannt/benannt.localhost/var/named/tecmintlocal.FWD.Zone $ sudo cp/var/benannt/benannt.Loopback/var/named/tecmintlocal.rev.Zone 
Zonendateien kopieren

Einmal haben Sie Konfigurationsdateien kopiert. Bearbeiten Sie diese Zonendateien nun mithilfe der Dateien Vim Editor.

$ sudo vim/var/named/tecmintlocal.FWD.Zone 

Bevor Sie unsere Hostinformationen in der Vorwärtszonendatei definieren, sehen Sie sich zunächst einen kurzen Blick auf die Beispielzonendatei.

Beispielzonendatei

Dies ist meine Vorwärtszonenkonfiguration, fügen Sie die folgende Eingabe an und nehmen Sie Änderungen gemäß Ihrem Bedarf vor.

$ Ttl 86400 @ in SOA Masterdns.tecmintlocal.com. Wurzel.tecmintlocal.com. (2014090401; Serial 3600; 1800 aktualisieren; 604800 wiederieren; Ablauf 86400); Minimum ; Nennen Sie Servers @ in NS Masterdns.tecmintlocal.com. @ In NS Slavedns.tecmintlocal.com. ; Nennen Sie Server -Hostname zu IP -Auflösung. @ In einer 192.168.0.200 @ in einer 192.168.0.201; Hosts in dieser Domain @ in einem 192.168.0.210 @ in einem 192.168.0.220 Masterdns in einem 192.168.0.200 Slavedns in einer 192.168.0.201 Node1 in einem 192.168.0.210 rhel1 in einer 192.168.0.220 

Speichern und beenden Sie die Datei mit und beenden Sie mit wq!. Nach dem Bearbeiten der Vorwärts-Look-up sieht es nach unten aus TAB Um ein anständiges Format in der Zonendatei zu erhalten.

Vorwärtszone konfigurieren

Erstellen Sie nun die Reverse-Lookup-Datei, wir haben bereits eine Kopie der Loop-Back-Datei im Namen von erstellt tecmintlocal.rev.Zone. Daher verwenden wir diese Datei, um unsere umgekehrte Suche zu konfigurieren.

$ sudo vim/var/named/tecmintlocal.rev.Zone 

Bevor Sie unsere Hostinformationen in der Reverse -Zone -Datei definieren.

Probe Reverse Lookup Zone

Dies ist meine Konfiguration der Umkehrzonen, fügen Sie die folgende Eingabe an und nehmen Sie Änderungen als Bedarf vor.

$ Ttl 86400 @ in SOA Masterdns.tecmintlocal.com. Wurzel.tecmintlocal.com. (2014090402; Serial 3600; 1800 aktualisieren; 604800 wiederieren; Ablauf 86400); Minimum ; Nennen Sie Servers @ in NS Masterdns.tecmintlocal.com. @ In NS Slavedns.tecmintlocal.com. @ In PTR tecmintlocal.com. ; Nennen Sie Server -Hostname zu IP -Auflösung. Masterdns in einer 192.168.0.200 Slavedns in einer 192.168.0.201; Hosts in Domain Node1 in einem 192.168.0.210 rhel in einer 192.168.0.220 200 in PTR Masterdns.tecmintlocal.com. 201 in PTR Slavedns.tecmintlocal.com. 210 im PTR -Knoten1.tecmintlocal.com. 220 in PTR RHEL1.tecmintlocal.com. 

Speichern und beenden Sie die Datei mit und beenden Sie mit wq!. Nach der Bearbeitung der umgekehrten Look-up sieht es nach unten aus TAB Um ein anständiges Format in der Zonendatei zu erhalten.

Konfigurieren Sie die Reverse -Lookup -Zone

Überprüfen Sie den Gruppenbesitz an Vorwärts-Nachschlag- und Reverse-Look-Up-Dateien, bevor Sie nach Fehlern in der Konfiguration überprüfen.

$ sudo ls -l/var/benannt/ 

Hier sehen wir beide Dateien in Wurzel Benutzerbesitzer, da Dateien, die wir aus Beispieldateien ausführen, unterhalb von Beispieldateien verfügbar sind /var/benannt//. Ändern Sie die Gruppe in beiden Dateien in den folgenden Befehlen in die benannten Dateien benannt.

$ sudo chgrp namens/var/named/tecmintlocal.FWD.Zone $ sudo chgrp namens/var/named/tecmintlocal.rev.Zone 

Überprüfen Sie nach dem Einstellen der korrekten Besitzer in den Dateien erneut.

$ sudo ls -l/var/benannt/ 
Überprüfen Sie die Zonendateien

Überprüfen Sie nun die Fehler in Zonendateien, bevor Sie den DNS -Dienst starten. Überprüfen Sie zuerst die genannt.Conf Datei, dann andere Zonendateien überprüfen.

$ sudo named-Checkconf /etc /benannt.conf $ sudo namens Checkzone Masterdns.Tecminlocal.com/var/named/tecmintlocal.FWD.Zone $ sudo named-Checkzone Masterdns.Tecminlocal.com/var/named/tecmintlocal.rev.Zone 
Fehlerzonendateien überprüfen

Standardmäßig wurde iptables ausgeführt und unser DNS -Server ist auf Localhost beschränkt. Wenn der Client den Namen von unserem DNS -Server auflösen möchte, müssen wir die eingehende Anfrage zulassen, da wir die Iptables -Inbound -Regel für den Port 53 hinzufügen müssen.

$ sudo iptables -i input -p udp - -dort 53 -m State -State New -j Akzeptieren 

Stellen Sie nun sicher, dass die Regeln korrekt hinzugefügt wurden in EINGANG Kette.

$ sudo iptables -l Eingabe 

Sparen Sie als nächstes die Regeln und starten Sie die Firewall neu.

$ sudo service iptables sparen $ sudo Service iptables Neustart neu 
Öffnen Sie den DNS -Anschluss an der Firewall

Starten Sie den benannten Dienst und machen Sie ihn anhaltend.

$ sudo service namens Start $ sudo chkconfig genannt auf $ sudo chkconfig -list benannt 
Starten Sie den DNS -Server

Testen Sie schließlich die konfigurierten Master -DNS -Zonendateien (vorwärts und umgekehrt) unter Verwendung graben & nslookup Werkzeug.

$ dig Masterdns.tecmintlocal.com [Vorwärtszone] 
Testen Sie die DNS -Zone vorwärts
$ dig -x 192.168.0.200 
Testen Sie umgekehrte DNS -Zone
$ nslookup tecmintlocal.com $ nslookup Masterdns.tecmintlocal.com $ nslookup slavedns.tecmintlocal.com 
Testen Sie DNS -Zonen

Cool! Wir haben a konfiguriert Master DNS, Jetzt müssen wir a einrichten Sklaven -DNS Server. Lassen Sie uns vorankommen, um einen Slave -Server einzurichten. Dies dauert nicht viel Zeit als Master -Setup.

Setup Slave DNS -Server einrichten

In der Slave -Maschine müssen wir auch die gleichen Bindungspakete installieren, wie in Master gezeigt. Installieren Sie sie daher mit dem folgenden Befehl.

$ sudo yum install bind* -y 
Installieren Sie DNS Bind

Öffnen und bearbeiten 'genannt.Conf ' Datei für unsere Zonendatenbank und Porthören.

$ sudo vim /etc /benannt.Conf 

Nehmen Sie Änderungen wie gezeigt nach Ihren Anforderungen vor.

// // genannt.conf // // bereitgestellt von Red Hat Bind -Paket, um den isc bind namens (8) DNS // Server als nur als Caching -Nameserver zu konfigurieren (nur als Localhost DNS -Resolver). // // siehe/usr/share/doc/bind*/sample/zum Beispiel benannte Konfigurationsdateien. // Optionen Anhörensport 53  127.0.0.1; 192.168.0.201; # Unser Slave DNS-Server IP-Listen-on-V6-Port 53 :: 1; ; Verzeichnis "/var/named"; Dump-file "/var/named/data/cache_dump.DB "; Statistics-File"/var/named/data/named_stats.txt "; memstatistics-file"/var/named/data/named_mem_stats.txt "; Lokalhost; 192.168.0.0/24; ; Rekursion Nr; DNSSEC-ENBABE JA; DNSSEC-VALIDATION JA; DNSSEC-Lookaside Auto; / * Pfad zum ISC-DLV-Schlüssel */Bindkeys-file "/etc/namens.iscdlv.Schlüssel "; Managed-Keys-Directory"/var/named/dynamic ";; Protokollierung Kanal default_debug file" Daten/Namen.rennen "; Schweregrad dynamisch;;; Zone"."In Type tipp; Datei" benannt ".ca ";; ## Definieren Sie unsere Sklave -Vorwärts- und Rückwärtszone, Zonendateien werden vom Master repliziert. Zone"tecmintlocal.com"In Typ Slave; Datei" "Datei"Sklaven/Tecmintlocal.FWD.Zone"; Masters  192.168.0.200; ; ; Zone"0.168.192.In-Addr.ARPA"In Typ Slave; Datei" "Datei"Sklaven/Tecmintlocal.rev.Zone"; Masters  192.168.0.200; ; ; ##### inklusive "/etc/benannt.RFC1912.Zonen "; inklusive"/etc/benannt.Wurzel.Taste"; 
Konfigurieren von Slave DNS

Starten Sie den DNS -Dienst mithilfe.

$ sudo Service namens Start 

Nach dem Neustart des Bind -Dienstes müssen wir die Zoneninformationen nicht einzeln definieren, wie unsere transfer repliziert die Zoneninformationen vom Master Server, wie im Bild unten gezeigt.

$ sudo ls -l/var/named/slaves 

Überprüfen Sie die Zoneninformationen mit dem CAT -Befehl.

$ sudo cat/var/named/slaves/tecmintlocal.FWD.Zone $ sudo cat/var/named/slaves/tecmintlocal.rev.Zone 
Überprüfen Sie die Sklavenzonendateien

Als nächstes öffnen Sie den DNS -Port 53 auf iptables, um eine eingehende Verbindung zu ermöglichen.

$ sudo iptables -i input -p udp - -dort 53 -m State -State New -j Akzeptieren 

Speichern Sie die Iptables -Regeln und starten Sie den Iptables -Service neu.

$ sudo service iptables sparen $ sudo Service iptables Neustart neu 

Machen Sie den Service am Systemstiefel anhaltend.

$ sudo chkconfig iptables on
Überprüfen Sie, ob anhaltende Set für Run-Levels festgelegt werden .
$ sudo chkconfig -list iptables 
Öffnen Sie den DNS -Port

Das ist es!. Jetzt ist es Zeit, unsere Client -Maschinen zu konfigurieren und nach dem Hostnamen zu überprüfen.

Client -Maschine konfigurieren

Auf der Clientseite müssen wir die Primärzusammenstellung zuweisen (192.168.0.200) und sekundäre DNs (192.168.0.201) Eingabe in Netzwerkeinstellungen, um einen Hostnamen zuzuweisen. Führen Sie den Befehl setup aus, um alle diese Einträge wie im Bild gezeigt zu definieren.

$ setup 
Fügen Sie den DNS -Eintrag hinzu

Ansonsten bearbeiten Sie die '/etc/reslov.Conf'Datei und fügen Sie die folgenden Einträge hinzu.

$ vim /etc /resolv.Conf 
Suche Tecmintlocal.com nameserver 192.168.0.200 Namenserver 192.168.0.201 

Verifizieren Sie nun die Suche IP, Hostname und Name Server.

$ ifconfig | grep inet $ hostname $ nslookup tecmintlocal.com 
Überprüfen Sie den DNS -Eintrag

Überprüfen Sie nun den Nachschlagepunkt vorwärts und umgekehrt mithilfe von DNS.

$ dig Masterdns.tecmintlocal.com $ dig -x 192.168.0.200 
Überprüfen Sie die DNS -Info

Unter verstehen Sie die Ausgangsausgabe:

  1. Header - Dies sagt alles, was wir gefragt haben und wie das Ergebnis war.
  2. Status - Der Status war kein Fehler, das bedeutet, welche von uns gesendete Abfrageanforderung ohne Fehler erfolgreich war.
  3. Frage - Die von uns geführte Frage, hier war meine Frage Masterdns.tecmintlocal.com.
  4. Antworten - Die Abfrageanforderung wurde behoben, wenn Informationen verfügbar sind.
  5. Behörde - Die Antwort der Namenservers für die Domain und Zone.
  6. Zusätzlich - Zusätzliche Informationen zu Namenserver wie Hostname und IP-Adresse.
  7. Abfragestunde - Wie lange dauerte es für die Lösung der Namen der obigen Server.

Überprüfen Sie schließlich unseren Knoten und machen Sie einen Ping.

$ dig Node1.tecmintlocal.com 
Überprüfen Sie die Kunden -DNS -Informationen
$ ping Masterdns.tecmintlocal.com -c 2 $ ping slavedns.tecmintlocal.com -c 2 $ ping 192.168.0.200 -c 2 $ Ping 192.168.0.201 -c 2 
Ping -DNS -Server

Schließlich haben wir hier fertig.