Bind: Unterschied zwischen den Versionen

Aus Linupedia.org
Wechseln zu: Navigation, Suche
(Under Construction)
(Einige Konfigurationsfehler beseitigt)
Zeile 1: Zeile 1:
{{UnderConstruction}}--[[Benutzer:Yehudi|Yehudi]] 20:24, 6. Jun 2007 (CEST)
 
 
 
Autor: [http://www.linux-club.de/faq/Benutzer:Yehudi Yehudi]
 
Autor: [http://www.linux-club.de/faq/Benutzer:Yehudi Yehudi]
  
Zeile 26: Zeile 24:
 
}}
 
}}
  
Unter SuSE 10.0 sollte zur Konfiguration des Namensservers [[YaST]] nicht eingesetzt werden, bis auf den Runleveleditor. Für die Konfiguration wird der Umgang mit Konsole und Editoren vorrausgesetzt.
+
 
Daraus ergeben sich für Suse 10.0 folgende Konfigurationen in meinem Fall:
+
Unter SuSE 10.0 und [[openSUSE]] 10.2 sollte man den Namensserver nicht mit [[YaST]] konfigurieren. Weiterhin ist es nicht unbedingt zu empfehlen, mit include Dateien zu arbeiten, da diese gerade in diesem Zusammenhang eher zu einer Unübersichtlichkeit führen.
  
 
== Szenario ==
 
== Szenario ==
  
PC-Client: G4 Name: apple IP:192.168.3.8
+
* PC-Client: G4 Name: apple IP:192.168.3.8
 
+
* Linux und Windows Clients werden noch zugefügt.
PC-Server: AMD 1,8GHz Suse 10.0 Name: linux IP: 192.168.3.1
+
* PC-Server: AMD 1,8GHz Suse 10.0 Name: linux IP: 192.168.3.1
  
 
== Zonefile (Forward Mapping) ==
 
== Zonefile (Forward Mapping) ==
  
'''/var/lib/named/db.heim.netz'''
+
'''/var/lib/named/heim.netz'''
  
  ; Zonefile (Forward Mapping) für heim.netz.
+
  <nowiki>; /var/lib/named/heim.netz
;
+
$TTL 86400
$TTL 3h
+
@ IN SOA heim.netz   root.heim.netz. (
@         IN SOA linux.heim.netz. root.linux.heim.netz. (  
+
142 ; Serial
  200207241  ; Seriennummer
+
8H ; Refresh 8 Hours
  10800      ; Refresh Zeit
+
2H ; Retry   2 hours
  3600      ; Retry Zeit
+
1W ; expiry 1 Week
  604800    ; Expire
+
1D ; minimum 1 Day
  38400 )    ; negative Caching TTL
+
                )
  ;
+
heim.netz. IN NS linux.heim.netz.
; Nameserver
+
localhost IN A 127.0.0.1
;
+
linux  IN A 192.168.3.1
          IN NS linux.heim.netz.
+
heim.netz CNAME linux.heim.netz.
          $ORIGIN ite.internal
+
www.heim.netz CNAME linux.heim.netz.
;
+
apple  IN A 192.168.3.8</nowiki>
; Hosts (kanonisch)
 
;
 
localhost IN A     127.0.0.1  
 
apple    IN A     192.168.3.8
 
          IN  LOC  52 31 0.12 N 13 24 0.36 E 34m
 
          IN  HINFO "Power MAC AGP-Grafik 1,4GHz" "OSX 10.4"
 
          IN  RP    root.apple.heim.netz.    linux.heim.netz.  
 
          IN TXT  "Apple G4" "Standort: Studio"
 
linux    IN  A     192.168.3.1
 
          IN  LOC  52 31 0.12 N 13 24 0.36 E 34m
 
          IN  HINFO "AMD 1,8GHz" "SuSE Linux 10.0"
 
          IN  RP    root.linux.heim.netz.    linux.heim.netz.
 
          IN  TXT  "Server und Router" "Standort: Arbeitszimmer"
 
;
 
; Aliase
 
;
 
www      IN  CNAME linux
 
irc      IN  CNAME linux
 
  
 
== Zonefile (Reverse Lookup) ==
 
== Zonefile (Reverse Lookup) ==
  
 
'''/var/lib/named/db.192.168.3'''
 
'''/var/lib/named/db.192.168.3'''
 +
<nowiki>$TTL 86400
 +
 +
@ IN SOA linux postmaster.linux.heim.netz. (
 +
1999010902 10800 1800 3600000 259200 )
  
; Zonefile für heim.netz. (Reverse Mapping)
+
@ IN      NS     linux.heim.netz.
;
+
   
$TTL 3h
 
@   IN SOA linux.heim.netz. root.linux.heim.netz. (
 
  200207241  ; Seriennummer
 
  10800     ; Refresh Zeit
 
  3600      ; Retry Zeit
 
  604800    ; Expire
 
  38400 )    ; negative Caching TTL
 
;
 
; Nameserver
 
;
 
     IN NS linux.heim.netz.  
 
  ;
 
; Hosts Adressen zeigen auf kanonische Namen
 
;
 
 
  8  IN PTR apple.heim.netz.  
 
  8  IN PTR apple.heim.netz.  
  1  IN PTR linux.heim.netz.
+
  1  IN PTR linux.heim.netz.</nowiki>
  
 
wechseln in das Verzeichnis:
 
wechseln in das Verzeichnis:
Zeile 110: Zeile 80:
  
 
Die named.conf sollte ganz am Ende den Eintrag "Include /etc/named.conf.include" haben. Damit wird eine weitere Configdatei geladen. Die named.conf braucht man nicht bearbeiten, dort passt in aller Regel alles:
 
Die named.conf sollte ganz am Ende den Eintrag "Include /etc/named.conf.include" haben. Damit wird eine weitere Configdatei geladen. Die named.conf braucht man nicht bearbeiten, dort passt in aller Regel alles:
 +
<nowiki>
 +
# /etc/named.conf
 +
options {
 +
directory "/var/lib/named";
 +
forwarders { 213.191.92.86; 213.191.74.18; };
 +
notify no;
 +
};
 +
 +
zone "." in {
 +
type hint;
 +
file "root.hint";
 +
};
 +
 +
zone "localhost" in {
 +
type master;
 +
file "localhost.zone";
 +
};
  
options {
+
zone "0.0.127.in-addr.arpa" in {
  directory "/var/lib/named";
+
type master;
  dump-file "/var/log/named_dump.db";
+
    file "named.127.0.0";
  statistics-file "/var/log/named.stats";
+
};
  forwarders { 213.191.92.87; 213.191.74.19; }; # ist die Include-Datei am Ende von"option" vorhanden, darf diese Zeile nicht drinstehen.
+
 
  listen-on-v6 { any; };
+
zone heim.netz in {
  cleaning intervall 120;
+
    type master;
  statistics-interval 0;
+
 
  notify no;
+
    file "heim.netz";
  include "/etc/named.d/forwarders.conf"; # bei Vorhandensein, darf forwarders unter options nicht noch mal genannt sein.
+
};
};
+
 
+
zone "3.168.192.in-addr.arpa" in {
zone "." in {
+
type master;
  type hint;
+
    file "named.192.168.3";
  file "root.hint";
+
};</nowiki>
};
 
 
zone "localhost" in {
 
  type master;
 
  file "localhost.zone";
 
};
 
 
zone "0.0.127.in-addr.arpa" in {
 
  type master;
 
  file "127.0.0.zone";
 
};
 
 
zone heim.netz in {
 
  type master;
 
  file "/var/lib/named/db.heim.netz";
 
};
 
 
zone "3.168.192.in-addr.arpa" in {
 
  type master;
 
  file "192.168.3.zone";
 
};
 
  
 
== DNS starten ==
 
== DNS starten ==
Zeile 208: Zeile 174:
  
 
== Quellen und weiterführende Links ==
 
== Quellen und weiterführende Links ==
* http://www.ag-intra.net/linux-kl-dns8.html
+
* http://www.ag-intra.net/linux-kl-dns8.html {{Deutsch}}
* http://de.wikipedia.org/wiki/Domain_Name_System
+
* http://de.wikipedia.org/wiki/Domain_Name_System {{Deutsch}}
* [[w:bind]]
+
* [[w:bind]] {{Deutsch}}
 +
* http://www.pl-berichte.de/t_netzwerk/dns.html {{Deutsch}}
 +
* http://www.pl-berichte.de/t_netzwerk/dnssecure.html {{Deutsch}}
 +
* http://wiki.ubuntuusers.de/DNS-Server_Bind {{Deutsch}}
 +
* http://wiki.ubuntuusers.de/DNS-Server_Bind/Erweiterte_Konfiguration {{Deutsch}}
 +
* http://www.linuxfibel.de/nettest.htm {{Deutsch}}
 
* Buchtipp: DNS und Bind aus dem O'Reilly Verlag. ISBN: 3897212900
 
* Buchtipp: DNS und Bind aus dem O'Reilly Verlag. ISBN: 3897212900
http://www.amazon.de/exec/obidos/ASIN/3897212900/303-0322939-0892207
+
http://www.amazon.de/exec/obidos/ASIN/3897212900/303-0322939-0892207 {{Deutsch}}
 
----
 
----
  
 
[[DHCP und DNS|zurück zu DHCP und DNS]]
 
[[DHCP und DNS|zurück zu DHCP und DNS]]
 
[[Category:DHCP und DNS]]
 
[[Category:DHCP und DNS]]

Version vom 6. Juni 2007, 19:09 Uhr

Autor: Yehudi

nbkr und baumpaul haben mich sehr stark unterstützt, und ihre Infos sind hier mit eingeflossen.

Die Installation

Folgende Pakete (inkl. eventueller Abhängigkeiten) müssen installiert sein:
  • bind
  • bind-chrootenv
  • bind-libs
  • bind-utils
  • bind-debuginfo -
  • bind-devel
  • bind-doc
  • bind-lwresd -

Es handelt sich um die Version 9.3.1-8

(unter openSUSE 10.2 sind die mit einem - versehenen Pakete nicht verfügbar, vermutlich auch nicht nötig)


Diese Beschreibung wurde mit folgenden Distributionen getestet:


Unter SuSE 10.0 und openSUSE 10.2 sollte man den Namensserver nicht mit YaST konfigurieren. Weiterhin ist es nicht unbedingt zu empfehlen, mit include Dateien zu arbeiten, da diese gerade in diesem Zusammenhang eher zu einer Unübersichtlichkeit führen.

Szenario

  • PC-Client: G4 Name: apple IP:192.168.3.8
  • Linux und Windows Clients werden noch zugefügt.
  • PC-Server: AMD 1,8GHz Suse 10.0 Name: linux IP: 192.168.3.1

Zonefile (Forward Mapping)

/var/lib/named/heim.netz

; /var/lib/named/heim.netz
$TTL 86400
@		IN SOA	heim.netz   root.heim.netz. (
				142		; Serial
				8H		; Refresh 8 Hours
				2H		; Retry   2 hours
				1W		; expiry  1 Week
				1D 		; minimum 1 Day
                )
heim.netz.		IN NS	linux.heim.netz.			
localhost 		IN A		127.0.0.1
linux   		IN A		192.168.3.1
heim.netz		CNAME	linux.heim.netz.
www.heim.netz		CNAME	linux.heim.netz.
apple   		IN A		192.168.3.8

Zonefile (Reverse Lookup)

/var/lib/named/db.192.168.3

$TTL 86400

@	IN	SOA	linux	postmaster.linux.heim.netz. (
	1999010902 10800 1800 3600000 259200 )

@		IN      NS      linux.heim.netz.
 
 8  IN PTR apple.heim.netz. 
 1  IN PTR linux.heim.netz.

wechseln in das Verzeichnis:

cd /var/lib/named


root.hint ist eine Datei. Da stehen die IP Adressen der Rootnameserver im Internet drin. Die sind die Wurzel (deshalb ja auch root) des DNS. Ohne die gibt es dauerhaft keine DNS. Eine root.hint wird normalerweise mitgeliefert. Die muss ab und an mal aktualisiert werden. Dafür wird der dig Befehl genutzt:.


dig @a.root-servers.net . ns > root.hint

Konfigurationsdatei /etc/named.conf

Die named.conf sollte ganz am Ende den Eintrag "Include /etc/named.conf.include" haben. Damit wird eine weitere Configdatei geladen. Die named.conf braucht man nicht bearbeiten, dort passt in aller Regel alles:

 # /etc/named.conf
options {
	directory "/var/lib/named";
	forwarders { 213.191.92.86; 213.191.74.18; };
	notify no;
};

zone "." in {
	type hint;
	file "root.hint";
};

zone "localhost" in {
	type master;
	file "localhost.zone";
};

zone "0.0.127.in-addr.arpa" in {
	type master;
    file "named.127.0.0";
};

zone heim.netz in {
    type master;

    file "heim.netz";
};

zone "3.168.192.in-addr.arpa" in {
	type master;
    file "named.192.168.3";
};

DNS starten

Nun in YaST2 System, den Runlevel Editor im Expertenmodus wählen, und in der Liste den Dienst named 3 und 5 einschalten. Darauf hin folgend im Klappmenü "Anwenden/Zurücksetzen" Dienst aktivieren, und in "Starten/Anhalten/Aktualisieren" entweder starten, oder aktualisieren.

Nach der Anleitung sollte der nameserver nun laufen, und beim nächsten reboots automatisch starten.


Wenn die Konfigurationsdateien geändert werden und der Nameserver die neu eingelesen werden soll, gibt man am Prompt ein:

linux:rndc reload


Muss der ganze Nameserver neu gestartet werden, gibt man folgenden Befehl ein:

linux: rndc stop
linux: /usr/sbin/named -u named -g named


Damit läuft der named korrekt unter dem Kennungnamen.

Resolver und Clients konfigurieren

Die Angabe nameserver <ipadresse> in der /etc/resolv.conf gibt an welche Nameserver der Rechner abfragt. Da sollte die IP des Rechners auf dem der Bind9 läuft drin stehen.

nameserver 192.168.3.1
search heim.netz


Und in /etc/sysconfig/network/config sollte die Zeile so aussehen:

MODIFY_RESOLV_CONF_DYNAMICALLY="no"


Bei OS X --> Systemeinstellungen --> Netzwerk --> TCP/IP folgendes eingetragen:

IP-Adresse: 192.168.3.8
Teilnetzmaske: 255.255.255.0
Router: 192.168.3.1
DNS-Server: 192.168.3.1
Domain-Name: search heim.netz

Fehlermeldung, Fehlersuche und Fehlerbehebung

cd /var/log 
grep -ilr named ./*

tail -f /var/log/messages

Fehlermeldung, Fehlersuche und Fehlerbehebung

cd /var/log 
grep -ilr named ./*

tail -f /var/log/messages


Quellen und weiterführende Links

http://www.amazon.de/exec/obidos/ASIN/3897212900/303-0322939-0892207 Deutsch.png


zurück zu DHCP und DNS