Bind
BIND (Berkeley Internet Name Domain) | |
---|---|
ein open Source DNS Server | |
Basisdaten | |
Entwickler: | ISC (Internet Systems Consortium) |
Aktuelle Version: | 9.4.1 |
letzte Veröffentlichung: | 30. April 2007 |
Betriebssystem: | UNIX, BSD, Linux, Mac OS X, Windows NT, z/OS |
Kategorie: | DHCP und DNS |
Lizenz: | BSD-Lizenz |
Deutschsprachig: | Nein |
Webseite: | http://www.isc.org/index.pl?/sw/bind/ |
Gebraucht wird diese Installation/Konfiguration, um als Server/Router mehreren Clients das Internet zur Verfügung zu stellen, und um auf einem eigenen Webserver ein Intranet mit einem eigenen Domainnamen bereitzustellen.
Inhaltsverzeichnis
Die Installation
Diese Beschreibung wurde mit folgenden Distributionen getestet: |
Diese Anleitung setzt die Kenntnis folgender Artikel vorraus: |
|
Folgende Pakete (inkl. eventueller Abhängigkeiten) müssen installiert sein: |
(unter openSUSE 10.2 sind die mit einem - versehenen Pakete nicht verfügbar, auch nicht unbedingt nötig) |
Unter SuSE 10.0 und openSUSE 10.2 ist es eher umständlicher den Namensserver 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. Einzig und allein bei den Forwarders, wird hier eine include Datei eingesetzt. Die Ausführung sind identisch mit dem wie es durch YaST DNS-Server von openSUSE vorgesehen ist.
Diese Beschreibung wurde mit folgender Hardware getestet: |
|
Konfigurationsdatei /etc/named.conf
Hier müssen lediglich die forwarders an die eigenen angepasst werden. Wird eine andere Domain, als heim.netz benutzt, ist dieses zu ändern. Bei der IP ist genauso zu verfahren. Es ist unbedingt darauf zu achten, dass nach dem letzten }; ein Absatz gemacht wird, da bind sonst nicht startet.
# /etc/named.conf options { directory "/var/lib/named"; notify no; include "/etc/named.d/forwarders.conf"; }; zone "." in { type hint; file "root.hint"; }; zone "0.0.127.in-addr.arpa" in { type master; file "127.0.0.zone"; }; zone "heim.netz" in { type master; file "master/heim.netz.zone"; }; zone "3.168.192.in-addr.arpa" in { type master; file "master/3.168.192.in-addr.arpa.zone"; };
Den Dateinamen kann man frei wählen, oft wird er nach der Zone benannt (wie oben - also die Adresse in umgekehrter Reihenfolge), hindert aber nicht daran, einen einfacheren Namen wie master/192.168.3.zone
zu wählen.
Die hint-Zone:
zone "." in { type hint; file "root.hint"; };
muss seit bind9 nicht mehr eingebaut sein, da sie von bind automatisch eingelesen wird. Es schadet aber nicht, diese zone der Übersicht halber eingebaut zu lassen (bei openSUSE steht sie per default drin).<ref name="DNS & Bind">S. 79</ref>
Zonefile (Forward Mapping)
/var/lib/named/master/heim.netz.zone
; /var/lib/named/master/heim.netz.zone $TTL 1D @ IN SOA linux.heim.netz. hostmaster.linux.heim.netz. ( 142 ; Serial 8H ; Refresh 8 Hours 2H ; Retry 2 hours 1W ; expiry 1 Week 1D ; minimum 1 Day ) IN NS linux.heim.netz. IN A 192.168.3.1 localhost IN A 127.0.0.1 IN AAAA ::1 linux IN A 192.168.3.1 www IN CNAME linux apple IN A 192.168.3.8 windowsxp IN A 192.168.3.15
Hier wird CNAME als Alias eingesetzt, um die Seite statt mit http://192.168.3.1 mit http://www.heim.netz aufzurufen, bzw. A 192.168.3.1, um auch http://heim.netz/ zu ermöglichen.
Zonefile (Reverse Lookup)
/var/lib/named/master/3.168.192.in-addr.arpa
$TTL 1D @ IN SOA linux.heim.netz. hostmaster.linux.heim.netz. ( 142 ; Serial 8H ; Refresh 8 Hours 2H ; Retry 2 hours 1W ; expiry 1 Week 1D ; minimum 1 Day ) IN NS linux.heim.netz. IN A 192.168.3.1 8 IN PTR apple.heim.netz. 1 IN PTR linux.heim.netz. 15 IN PTR windowsxp.heim.netz.
root.hint
ist eine Datei. Da stehen die IP-Adressen der Rootnameserver des Internets drin. Die sind die Wurzel (deshalb ja auch root) des DNS. Ohne die gibt es dauerhaft kein DNS. Eine root.hint
wird normalerweise mitgeliefert. Die muss ab und an mal aktualisiert werden. Dafür wird der dig
Befehl genutzt:.
cd /var/lib/named dig @a.root-servers.net . ns > root.hint
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:
rndc reload
Muss der ganze Nameserver neu gestartet werden, gibt man folgenden Befehl ein:
rndc stop /usr/sbin/named -u named -g named
Damit läuft der named korrekt unter dem Kennungnamen.
Resolver und Clients konfigurieren
/etc/resolv.conf
In der /etc/resolv.conf gibt man an, welche Standarddomains für Kurznamen überprüft werden sollen, und welche Nameserver der Rechner abfragen soll.
search heim.netz nameserver 192.168.3.1
/etc/sysconfig/network/config
Und in /etc/sysconfig/network/config sollte die Zeile so aussehen:
MODIFY_RESOLV_CONF_DYNAMICALLY="no"
/etc/host.conf
order hosts, bind multi on
/etc/nsswitch.conf
Die folgende Zeile sollte drinestehen:
hosts: files dns
/etc/hosts
127.0.0.1 localhost #spezial IPv6 adresses ::1 localhost ipv6-localhost ipv6-loopback 192.168.3.1 linux.heim.netz 192.168.3.1 heim.netz www.heim.netz
Clients
OS X
Bei OS X --> Systemeinstellungen --> Netzwerk --> TCP/IP folgendes eingetragen:
Windows XP
Netzwerkumgebung --> Rechtsklick --> Eigenschaften --> LAN-Verbindung --> Rechtsklcik --> Eigenschaften --> Internetprotokoll[TCP/IP] --> Eigenschaften --> wie hier im Screenshot ausfüllen
--> auf Erweitert --> nach dem Vorbild des Bildschirmfotos die Daten in die Felder eintragen
Ok drücken --> Noch mal Ok drücken --> schließen drücken --> Im Browserfenster auf Arbeitsplatz mit der rechten Maustaste klicken --> Eigenschaften --> Computername --> Den Inhalt der folgenden Ansicht nach entsprechender Anpassung übernehmen.
Fehlermeldung, Fehlersuche und Fehlerbehebung
cd /var/log grep -ilr named ./*
tail -f /var/log/messages
Quellen und weiterführende Links
<references/>
- http://www.isc.org/index.pl?/sw/bind/
- http://www.ag-intra.net/linux-kl-dns8.html veraltet, da mit SuSE Linux 8.0/8.2 und bind8
- http://de.wikipedia.org/wiki/Domain_Name_System
- w:bind
- http://www.pl-berichte.de/t_netzwerk/dns.html von 2003 daher nicht mehr ganz aktuell
- http://www.pl-berichte.de/t_netzwerk/dnssecure.html
- http://wiki.ubuntuusers.de/DNS-Server_Bind
- http://wiki.ubuntuusers.de/DNS-Server_Bind/Erweiterte_Konfiguration
- http://www.linuxfibel.de/nettest.htm
- http://www.oreilly.de/german/freebooks/linag2/netz0603.htm
- Administrator Reference Manual als pdf:
- Buchtipp:
- DNS und Bind aus dem O'Reilly Verlag. ISBN: 3897212900 http://www.amazon.de/exec/obidos/ASIN/3897212900/303-0322939-0892207
- "Linux" Michael Koffler S. 1051-1061 ISBN3-8273-2342-8
Editorentabelle
Autor:Yehudi
Ergänzungsautor:Jengelh
Lektor:
Designer:
Bilder:
Dank an:nbkr, baumpaul und Carsten
Artikel ins Wiki eingefügt von:
Wenn Du möchtest, dass Deine Arbeit wie die des Ursprungsautoren gewürdigt wird, trage Dich in dieser Tabelle entsprechend ein.