HomeMapIndexSearchNewsArchivesLinksAbout LF
[Top Bar]
[Bottom Bar]

von:Andreas J Gundacker

Inhalt:
1)Das ARPANET, der Ursprung des World Wide Web
2)Ein paar technische Ausdr�cke zum Verst�ndnis
3)Das TCP/IP
3.1)Das IP oder die IP ?
3.2)Das TCP (Transmission Control Protocol)
4)Das Domain Name System (DNS)
4.1)Ein �berblick des Systems
4.2)Wof�r ben�tigt man nun das DNS?
5)Die Instalation eines Domain Name Servers
5.1)Die Dateien der Datenbank des DNS
5.2)Ressource records
5.3)Die kompletten Datenbankdateien f�r unsere fiktive Domain
5.4)Abk�rzungen
5.5)Die Resolverbibliothek
5.6)Der Test mit nslookup

Einf�hrung in DNS unter LinuX

Zusammenfassung: Dieser Artikel richtet sich an all jene, die sich f�r weltweite Netzwerke wie dem Internet und dem World Wide Web (WWW) interessieren. Vor allem aber an solche die etwas mehr �ber die unsichtbaren Abl�ufe erfahren wollen. Sollten Sie sich bereits des�fteren gefragt haben welche Prozesse hinter Ihrem Browser ablaufen, nachdem Sie die Adresse eines Servers gesetzt haben, k�nnen Ihnen die folgenden Ausfuehrungen auf einfache Weise Aufschlu� dar�ber geben.


Worst seen with Explorer. Try Netscape instead. 

Dieser Artikel erschien zuerst im Linux Magazine.
Abgedruckt mit der Erlaubnis des Authors.


Der Artikel in f�nf Teile untergliedert:
Der Erste beschreibt in wenigen Worten wie sich das Internet entwickelte. Der Zweite soll einige Grunds�tzliche Begriffe erk�ren. Der Dritte besch�ftigt sich mit den wichtigsten Protokollen des Internet: Dem TCP und dem IP. Der Vierte soll helfen die Funktionsweise des DNS zu verstehen. Im F�nften Teil wird an einem Beispiel die Installation eines Domain Name Systems unter Linux f�r ein kleines LAN mit Gateway erkl�rt. Auf diese Weise soll dieses Dokument sowohl eine Einf�hrung f�r Interessierte sein, als auch eine Kurzreferenz f�r Fortgeschrittene.

(1)Das ARPANET, der Ursprung des World Wide Web

Als "Internet" werden alle weltweit miteinander verkn�pften Netzwerke bezeichnet, welche sich aus dem ARPANET entwickelten. Das ARPANET entstand im Jahre 1969 durch ein Forschungsprojekt der amerikanischen DARPA (Defense Advance Research Project Agency). Als das ARPANET aus dem Experimentalstadium entwuchs, entwickelten sich die Grundprotokolle des TCP/IP, welche alsbald zum Milit�rstandard ernannt wurden. Um den partizipierenden Instititionen,welche sich an die neuen Protokolle anpassen mussten, diese �nderungen zu erleichtern, wurde die Firma Bolt, Barnek & Newman (BBN) beauftragt das TCP/IP in das System Berkeley-Unix zu integrieren. So enstand die Fusion zwischen dem Betriebssystem UNIX und den Protokollen TCP/IP.

Im Jahre 1983 wurde das ARPANET aufgeteilt in das MILNET als Teil des Defense Data Network (DDN) und einem kleineren Arpanet. Diese beiden Netze nannten sich alsdann INTERNET. Bis zum Jahr 1990 verschwand das ARPANET und wurde komplett durch das Internet abgel�st, welches eine Vielzahl an Netzwerken in der ganzen Welt umfasst.

 

(2) Ein paar technische Ausdr�cke zum Verst�ndnis

Stellen sie sich vor, sie sitzen vor einem Computer del Teil des Local Area Networks (LAN) des Mathematikinstituts Ihrer Universit�t ist (Abb. 1).

Das LAN des Mathematikinstituts ist �ber einen backbone (= R�ckgard: ich w�rde es mal Hauptdatenleitung bezeichnen) mit dem LAN des Physikinstituts verbunden. Sie beabsichtigen nun einem Freund, welcher im Physikinstitut arbeitet, Daten zu schicken. Es ist grunds�tzlich sehr wichtig zu wissen, da� ihr Computer wie auch der Rechner ihres Freundes unverwechselbare Namen im Netz der gesamten Universit�t besitzen (gleichermassen verh�lt es sich bei allen an das Internet angeschlossenen Computer). Damit die beiden physisch voneinder getrennten Netze miteinander kommunizieren k�nnen, ben�tigen sie einen Gateway. Ein Gateway ist ein Rechner, der physisch unabh�ngige Netze miteinader verbindet. In diesem Falle ben�tigen wir zwei Gateways - eines f�r das Netz der Mathematiker und eines f�r die Physiker. Desweiteren nenne ich den Gatway des Mathematikinstituts "mats" und den Gate f�r das Physiker-LAN "phys".


Abbildung 1: Der Weg der Daten von Einstein nach Edison

Da die auf Einstein installierte Software (rlogin, telnet, ftp, etc.) Datenpakete nicht direkt an Edison senden kann - der Rechner befindet sich schliesslich in einem physisch getrennten Netz - wird ein Gateway ben�tigt um die Daten oder besser Datenpakete an die entsprechende Stelle zu leiten. Dies bedeutet nun, da� der Gateway "mats" die Datenpakete an den Gateway "phys" leitet, welcher wiederum die Zuteilung der Daten an Edison �bernimmt. Dieses Schema des Datentransfers an einen entfernten Computer (host) wird Routing genannt und die Daten bzw. einzelnen Datenpakete bezeichnet man als Datagramme (engl: datagram).

(3) Das TCP/IP

(3.1) Das IP oder die IP ?

Die Datagramme als kleinste Einheit der Daten�bertragung werden �ber ein Protokoll ausgetauscht - dem Internet Protocol (das IP), welches absolut hardwareunabh�ngig ist. Auf diesem Wege kommen wir zu dem Hauptvorteil des Internet Protocols, welcher darin besteht, physisch getrennte Netze zu einem scheinbar homogenen zu vereinen.

Die Hauptfunktionen des IP:

Bedauerlicherweise fehlen dem IP Kontrollinformationen der Daten�bertragung (handshake), was soviel bedeutet, da� das IP zwar Pakete von einem Ort zum anderen bef�rdert, jedoch ohne Kontrolle dar�ber ob alle Pakete in der richtigen Reihenfolge angekommen sind. Dieses Problem behandeln wir etwas sp�ter.

Nun haben wir eine gewisse Vorstellung �ber den Softwareteil der Daten�bertragung (Routing). Sie erinnern sich, da� sie vor einem Computer namens Einstein sitzen. Rechner in Netzwerken erhalten Namen da sie f�r den Menschen leichter zu merken sind als Sequenzen von Zahlen.

Das Internetprotokoll besitzt ein hardwareunabh�ngiges Adressschema. Dies wird erreicht durch die Zuordnung einer 32 bit-langen Zahl zu einem Hostrechner; die IP-Adresse (die IP). Die IP-Adresse wird durch vier Dezimalzahlen (Oktette) dargestellt, welche durch Punkte getrennt sind. Einstein k�nnte die Hardwareadresse 0x952C0C02 haben, welche dann beispielsweise in der Form 149.176.12.7 erschiene.

An dieser Stelle haben sie erkannt, da� wir �ber drei verschiedene Adressierungen verf�gen:

Die Adresse der Ethernetkarte belegt einen Port im Betriebssystem, welcher unter LinuX �blicherweise eth0-n ist. Serielle Ports beispielsweise werden unter cua0-n oder ttyS0-n spezifiziert. Um ganz genau zu sein, ist unrichtig zu sagen, da� ein Computer oder host einen Namen wie Einstein besitzt, da sich letztendlich die Adressierung auf das entsprechende Hardwareinterface bezieht!

Sie wissen jetzt, da� das Internetprotokoll (das IP) Daten in Form von mehreren Datagrammen zwischen Rechnern �bertr�gt. Datagramme werden an die Adresse ins Internet oder ein anderes LAN geschickt, welche in der Kopfzeile eines jeden Datagrams steht. Die Adresse des Empf�ngers ist eine 32 bit-lange Standardadresse (die IP), welche ausreichende Information enth�lt um einen Computer in einem entfernten Netz unverwechselbar zu identifizieren.

Eine IP-Adresse besteht aus zwei Teilen:

Abh�ngig von der Gr��e des Netzwerkes resultiert die Anzahl der Hostadressen. Um diese unterschiedlichen Anforderungen zu erf�llen, wurde mehrere Netzwerkklassen gebildet, welche die Unterteilung der IP-Adressen definieren. 

 

Klasse A:   umfasst die Netze 1.0.0.0 bis 127.0.0.0 . Die Ziffer dieses Netztyps befindet sich im ersten Oktett. Auf diese Weise stehen 24 bits zur Definition von Rechnern zur Verf�gung, was f�r ca 1,6 Millonen host ausreicht.
Klasse B:   umfasst die Netze128.0.0.0 bis 191.255.0.0 . Die Ziffer dieses Netztyps befindet sich in den beiden ersten Oktetten. Dies em�glicht 16.320 Netze mit je 65.024 Rechnern.
Klasse C:   umfasst die Netze192.0.0.0 bis 223.255.255.0 . Die Ziffer dieses Netztyps befindet sich in den ersten drei Oktetten. Dies erm�glicht fast 2 Millionen Netzte mit 254 hosts.
Klasse D, E & F:   Adressen, die sich im Berich 224.0.0.0 bis 225.0.0.0 befinden, dienen experimentellen Zwecken oder sind reserviert f�r zuk�nftigen Gebrauch. Jedenfalls definieren sie keine Netzwerke.

Um zu unserem Beispiel zur�ckzukehren, k�nnen sie sehen, da� Einstein mit der IP 149.176.12.7 einem Netz der Klasse B: 149.176.0.0 angeh�rt und einen Rechner mit der Adresse 12.7 definiert.
Es ist desweiteren sehr wichtig zu wissen, da� die Adresse eines Rechners weder 0 noch 225 sein darf, da diese f�r spezielle Zwecke reserviert sind. Eine Rechneradresse die nur aus Nullen besteht (149.176.0.0) definiert ja lediglich das Netz selbst. Wenn die Hostadresse ledglich mit den Ziffern 255 beschrieben ist (149.176.255.255) spricht man von der Broadcast-Adresse (Radio), da Daten die an diese Adresse gesandt werden, an alle Rechner dieses Netzes gerichtet sind.

Dar�berhinaus existieren zwei weitere reservierte Adressen: 0.0.0.0, welche als default route bezeichnet wird und 127.0.0.0 als loopback-Adresse. Die default route-Adresse hat mit einem speziellen Fall von Routing durch ein Gateway zu tun und soll uns hier nicht weiter besch�ftigen. (Thema: Masquerading)
Weitaus wichtiger ist das "Netz" 127.0.0.0, welches f�er den Teil des IP-Verkehrs reserviert ist, der nur im Rechner selbst abl�uft. Die IP 127.0.0.1 ist gew�hnlich an ein Interface im Rechner selbst gerichtet, welches auch loopback-Interface genannt wird und wie ein geschlossener Kreis funktioniert. Jedes an diese Adresse gesandte Paket wird sofort zur�ckgegeben. Auf diese Weise dient das loopback um Netzsoftware zu testen ohne ein echtes Netz installiert zu haben. "Ping localhost" oder "ping 127.0.0.1" ist ein gel�ufiger Test um zu �berpr�fen ob TCP/IP richtig konfiguriert ist.

Die IP-Adresse, die sie schliesslich ihrem Rechner oder Netz zuweisen k�nnen, wird von einer zentralen Institution namens NIC (Network Information Center) entschieden. Die einfachste L�sung ist, ihren Provider mit der Reservierung der Adresse zu beauftragen. Wenn sie sicher sind, da� ihr Netz niemals ans Internet angeschlossen wird, k�nnen sie eigentlich jedwede IP w�hlen. Um allerdings ganz sicher zu sein da� kein Paket ins Internet entkommt, ist es angebracht IPs zu w�hlen, die nur innerhalb Ihres Netzes funktionieren und nicht im Internet geroutet werden k�nnen.

Diese Adressen sind:

Ungeachtet dessen ist es noch m�glich einen Gateway f�r das Internet zu konfigurieren, was bedeutet, da� die externe Adresse des Gates im Internet bekannt ist, die Rechner innerhalb Ihres Netzes aber nicht angefahren werden k�nnen, da Ihre IPs im Internet nicht gehandelt werden. Die Rechner ihres Netzes h�tten allerdings Zutritt zum WWW (nochmal Stichwort: IP-Masquerading).

(3.2) Das TCP(Transmission Control Protocol)

Wie weiter oben bereits erw�hnt, verf�gt das Internet Protocol �ber keine �bertragungskontrollfunktion. Dem nimmt sich das Transmission Control Protocol (TCP) an. Das TCP wird als zuverl�ssiges, verbindungsorientiertes Datenstrom (bytestream)-Protokoll bezeichnet.

Aus diesem Grunde kontrolliert das TCP die richtige Reihenfolge der Datenpakete.

(4) Das Domain Name System (DNS)

(4.1) Ein �berblick des Systems

Das Domain Name System ist grunds�tzlich eine weitr�umig verteilte Datenbank �ber Namen von Hostrechnern die an einem Netz angeschlossen sind. Dies erm�glicht eine lokale Kontrolle der Gesamtheit von Segmenten der Datenbank, was desweiteren durch ein Client-Server Schema den Zugriff auf jedes Segment des gesamten Netzes erlaubt.

Der Nameserver ist ein Programm das den Serverteil des client-server Machanismus des DNS darstellt. Nameserver enthalten Informationen �ber bestimmte Segmente der Datenbank, welche selbige f�r Clients, sogenannte Resolver zur Verf�gung stellen. Resolver bestehen h�ufig lediglich aus ein paar Libraryroutinen, welche Anfragen erstellen und diese durch das Netz an den Nameserver schicken.

Die Datenbankstruktur des DNS zeigt Abbildung 2. Die Gesamtheit der Datenbank stellt sich in Form eines umgedrehten Baumgebildes dar, wobei die Wurzel (root) an der Spitze sitzt. Der Name der "root" ist die Etikette NULL, die lediglich in Form eines Punktes (".") geschrieben wird. Jeder Knoten des Baums ist sowohl eine Partition der gesamten Datenbank, als auch eine Domain des Domain Name Systems. Dar�berhinaus kann nun jede Domain wieder in Partitionen, sogenannte Subdomains unterteilt werden, die sich wie Spr�sslinge von den elterlichen Knoten ableiten.


Abbildung 2: Die Datenbank des DNS

Jede Domain ist derart dargestellt, da� sie eine Etikette aufweist, welche sie relativ zur elterlichen Domain identifiziert. Eine Domain besitzt desweiteren einen Domainnamen, der die Position in der Datenbank definiert. Dies ist zu vergleichen mit dem absoluten Pfad eines Directories, welches auf die Stelle im Dateisystem ihres Computers hindeutet.

Im Domain Name System besteht der komplette Domainname aus einer Reihe von Etiketten, welche bei der Domain beginnt und an der Wurzel (root) endet, wobei die einzelnen Etiketten durch Punkte getrennt sind (z.B. einstein.matematik.ac.edu). Unter der Bedingung, da� jede Domain von unterschiedlichen Institutionen verwaltet werden kann, besteht die M�glichkeit eine Domain in mehrere Subdomains zu zerlegen, deren Administration von anderen Institutionen �bernommen wird.

Das Network Information Center verwaltet beispielsweise die Domain "edu" (educational) und hat die Authorisierung �ber die Subdomain "ac.edu" (academic) an die Universit�t abgegeben, welche wiederum die Verwaltung der Domain "matematik.ac.edu" dem Mathematikinstitut �berl�sst (Abb. 3).


Abbildung 3: Die Verwaltung von Subdomains

Nun bleibt noch zu erw�hnen, da� jede Domain so viele Subdomains wie Rechner enthalten kann. Jeder Rechner in einem Netzwerk besitzt einen Domainnamen, der Informationen wie die IP-Adresse oder wie das Routing von mails beinhaltet. Ein host kann dar�berhinaus einen oder mehrere Aliasnamen haben, der nichts anderes als ein Verwies von einem Domainnamen zu dem ofiziellen oder kanonischen Hostnamen (canonical name) ist. Wenn ihre Freundin beispielsweise den Namen Elisabeth tr�gt, werden sie sie mal Schnucki, Schaetzchen, S��e etc. nennen und es sollte sich dann nur auf die eine "offizielle" Elisabeth beziehen.

Die f�r eine Domain authorisierte Organisation hat v�llig freie Wahl in der Auswahl der Hostnamen innerhalb der Domain. Egal welcher Name auch ben�tzt wird, es kann nie zu Konflikten kommen, da ja die einzigartige Domain des Netzes am Namen dranh�ngt. So k�nnen z. B. zwei Rechner mit dem Namen Einstein am Netz der Universit�t h�ngen; die Datagramme von einstein.matematik.ac.edu werden immer ihren Weg nach einstein.physik.ac.edu finden, da beide Rechner verschiedenen elterlichen Domains angeh�ren.

(4.2) Wof�r ben�tigt man nun das DNS?

Um Domainnamen und IP-Adressen aufzul�sen bzw. Rechner in entfernten Netzen ausfindig zu machen. Wie bereits weiter oben erw�hnt wurde, f�llt es dem Menschen leichter sich an Namen zu erinnern als an Zahlen. Insbesondere wenn es sich um eine derart gro�e Anzahl an Adressnamen handelt wie im Internet.
Computer arbeiten andererseits perfekt mit Zahlen wie den IP-Adressen. Was passiert nun, wenn sie eine Adresse wie z. B. http://www.altavista.com aufrufen. Ihr Browser stellt eine Anfrage an den Domain Server ihres Providers und dieser versucht wiederum den Doaminnamen mit der dazugeh�rigen IP-Adresse aufzul�sen. F�r den Fall da� ihr Provider nicht authorisiert ist f�r diese Zone, richtet er die Anfrage an den authorisierten Server weiter, bis die entsprechende Domain erreicht ist. Abbildung 4 stellt eine Domainsuche nach "einstein.matematik.ac.edu" schematisch dar.


Figura 4: Das Auffinden von "einstein.matematik.ac.edu" im Internet

Dies bedeutet, da� jeder Nameserver die komplette Information �ber die Zone beinhaltet f�r die er authorisiert ist, dar�berhinaus verf�gt er noch �ber Basisinformationen anderer Zonen. Wenn sich eine Anfrage auf eine Zone richtet die ausserhalb der authorisierten Zone liegt, wei� ihr Name Server wenigstens wo er suchen muss. Dies kann bedeuten, da� eine Anfrage �ber mehere Name Server laufen muss bis Sie Kontakt zu dem gew�nschen Ziel haben.

F�r den Fall, da� sie sogar die IP-Adresse ihres Zieles w��ten, ist es unvermeidlich andere Name Server zu konsultieren, wenn sich das Ziel nicht im selben Netz befindet. Auf diese Weise ist es leicht vorstellbar, warum das Domain Name System nicht aus einer zentralen Datenbank bestehen kann. Erstens w�rde es zu lange dauern eine Domain unter Millionen anderer auszulesen und zweitens g�be es ziemlich lange Wartezeiten bei weltweit tausender simultaner Anfragen an einen Server. �berdies h�tte es wenig Sinn eine Anfrage an einen entfernten Server zu stellen um mit einem host der eigenen Zone zu kommunizieren.

Bis jetzt haben wir Andeutungen �ber die Aufl�sung von Domainnamen zu IP-Adressen gemacht. Was passiert aber wenn sie nur die IP-Adresse haben und den entsprechenden Domainnamen herausfinden wollen. Zur L�sung dieses Problems wurde die Domain "in-addr.arpa" gebildet. (Abb. 5)

Diese Domain wird inverse Domain genannt und die Aufl�sung von IP-Adressen nach Domainnamen bezeichnet man als reverse mapping oder reverse lookup. Die inverse Domain wird in der Form dargestellt, da� die Ziffern der IP-Adresse in umgekehrter Reighenfolge geschrieben werden und die Domain in-addr.arpa angeh�ngt wird.

Ein Beispiel: Wir erinnern uns, da� die IP von Einstein "149.176.12.7" lautet und den Domainnamen "einstein.matematik.ac.edu" tr�gt. Die Domain "matematik.ac.edu" h�tte dann die inverse Domain: 12.176.149.in-addr.arpa" und der Rechner "einstein.matematik.ac.edu" w�rde entsprechend "7.12.176.149.in-addr.arpa" geschrieben.

Figura 5: Das reverse mapping

(5) Die Instalation eines Domain Name Servers unter LinuX am Beispiel eines Local Area Networks mit Gateway unter Verwendung von BIND (Berkeley Internet Name Daemon)

Das Folgende setzt voraus, da� sie bereits Netztwerkkarten in ihrem Netzt installiert haben bzw. wissen wie selbige unter LinuX zu konfigurieren sind. Die Befehle "ifconfig" und "ping localhost" k�nnen ihnen Aufschlu� �ber eine korrekte Konfiguration geben. Nun wenden wir uns also endlich dem praktischen Teil zu, in dem wir ihre Rechner durch DNS verbinden und BIND konfigurieren. Weitere Voraussetzung ist, da� sie das Paket BIND, welches den Server-D�mon named (n�imdii) enth�lt auf dem Rechner installiert haben, welcher als Nameserver eingesetzt werden soll.

In diesem Kapitel werden wir eine fiktive Domain konfigurieren. Dies soll Ihnen erm�glichen durch einfaches ersetzen der IP-Adressen und Computernamen ihren eigenen Name Server zum Laufen zu bringen. Sie werden Details entdecken, welche aus platz- und zeitgr�nden nicht behandelt sind. Wenn sie sich allerdings genau an die Syntax halten, sollte eigentlich nichts schiefgehen ,-)


Figura 6
: Das Netz der Fa. Distribution Alcomato

Bei der Firma unsrer fiktiven Domain handelt es sich um einen Getr�nkegro�handel. Die Fa. "Distribution Alcomato", welche auf exotische Biersorten und Hochprozentiges spezialisiert ist, hat vom NIC die Domain "alcomat.com" genehmigt bekommen. Distribution Alcomat verf�gt �ber zwei Ethertnets mit den Netzziffern 192.249.249 und 192.253.253. (Abb. 6)

Einen Teil der ehemaligen Hosttabelle (gew�hnlich in /etc/hosts) zeigt die folgende Darstellung: 

/etc/hosts 
127.0.0.1       localhost
# das sind die Schnappsrechner
192.249.249.2   whisky.alcomat.com              whisky 
192.249.249.3   brandy.alcomat.com              brandy
192.249.249.4   vodka.alcomat.com               vodka
        .........
# das sind die Bierrechner
192.253.253.2   mahou.alcomat.com               mahou
192.253.253.3   augustiner.alcomat.com          augustiner
192.253.253.4   polar.alcomat.com               polar
        ..........
# Diese Adressen definieren den Gateway der beiden Ethernets.
192.249.249.1   tubo.alcomat.com tubo   tu       tub249
192.253.253.1   tubo.alcomat.com tubo   tu       tub253

 

(5.1) Die Dateien der Datenbank des DNS (database files)

Der erste Schritt ist nun die Hosttabelle in entsprechnde Dateien des DNS zu �bersetzen.
Die Datenbank des DNS besteht aus mehreren Dateien: Eine Datei projiziert alle Hostnamen auf die dazugeh�rigen IP-Adressen. Andere Dateien machen genau das Gegenteil und projizieren IP-Adressen auf die entsprechenden Hostnamen. Diese Dateien werden f�r das bereits erw�hnte reverse mapping ben�tigt und f�r jedes Netz (hier, die beiden Ethernets) muss eine eigene spezifische Datei f�r das Auslesen von Hostnamen durch IP-Adressen estellt werden.

Ich habe die Datei, welche Hostnamen auf IP-Adressen projiziert named.hosts genannt. Die Dateien, welche IPs auf Hostnamen projizieren (reverse mapping) habe ich in Anlehnung an die beiden Netzziffern named.249 und named.253 getauft. Es steht ihnen nat�rlich v�llig frei welche Dateinamen sie verwenden.

Neben diesen existieren noch zwei weitere Datenbankdateien, die f�r jeden Name Server mehr oder weniger identisch sind. Ich habe mich dabei f�r die Dateien named.cache und named.local entschieden.

Um schlie�lich die Datenbankdateien in ein Zusammenspiel zu bringen, ben�tigt der Same Server eine Startdatei. Im Falle von BIND sucht der Server diese Datei f�r in /etc/named.boot. (Durch die Installation des Paketes BIND wird die Datei dort automatisch abgelegt). Es sei noch erw�hnt, da� au�er BIND noch andere Implementierungen des DNS existieren.

(5.2) Ressource records

Die mesiten Komponten der Datenbankdateien heissen ressource records. Gem�� der Referenz �ber DNS weisen die ressource records folgende Reihenfolge auf:

Die nachstehenden records verweisen auf Hostdaten der Domain (des Netzes).

Kommentare: Der Inhalt der Datenbankdateien des DNS ist unter Verwendung von Komentaren und leeren Zeilen leichter zu lesen. Kommentare beginnen mit einem Strichpunkt ";" und enden am Ende der Zeile. Name Server ignorieren Komentare sowie leere Zeilen.

SOA record:
Jede Datenbankdatei des DNS beginnt mit dem ressource record SOA (start of authority: sie erinnern sich an die Sache mit der Authorisierung f�r eine Domain). Der SOA record deutet auf den Name Server hin, der als beste Informationsquelle f�r die Rechner in dieser Domain dient. Unser Name Server - augustiner- ist demnach f�r die Domain "alcomat.com" authorisiert. Wir ben�tigen SOA records f�r die Dateien named.hosts, named.249 und named.253. Den folgenden SOA record ben�tzen wir beispielsweise f�r named.hosts.

SOA record
alcomat.com.   IN SOA augustiner.alcomat.com.  juan.mahou.alcomat.com. (
                                  1          ; Serial for updates
                                  10800      ; Refresh after 3 hours
                                  3600       ; Retry after 1 hours
                                  604800     ; Expire after 1 week
                                  86400 )    ; Minimum TTL of 1 week

Der Name der Domain mu� in der ersten Spalte stehen. Sie d�rfen niemals vergessen einen Punkt an das Ende der Namen zu setzen ! Sollten sie das �bersehen, wird automatisch die Domain "alcomat.com" an den Namen geh�ngt, was zum Teil zu Fehlern f�hrt. Die Erkl�rung daf�r finden sie im Kapitel Abk�rzungen.

"IN" steht f�r Internet. Es existieren noch weitere Klassen, die allerdings nicht weiter von Bedeutung sind.

Der erste Name nach dem SOA record, augustiner.alcomat.com, ist der Name des Name Servers f�r die Domain (erste Spalte). Der zweite Name, juan.mahou.alcomat.com ist die Postadresse der f�r diese Domain zust�ndigen Person. (wenn sie den ersten Punkt mit einem @ ersetzen). BIND liefert noch einen andere Typen von ressource record f�r diesen Zweck: RP (responsible person).

Die in Klammern gesetzten Ausdr�cke k�nnen sich �ber mehrere Zeilen erstrecken. Fast alle Zeilen innerhalb der Klammern dienen zur Information von Name Servern untergeordeneten Ranges. Diese Server werden sekund�re Name Server genannt und sind in unserem Beispiel nicht weiter erw�hnt. M�glicherweise gehe ich darauf in einer sp�teren Ausgabe ein.

�hnliche SOA records weden in den Dateien named.249 y named.253 eingesetzt. Allerdings wird in diesen Dateien die Domain "alcomat.com" durch die Domain des reverse mapping (249.249.192.in-addr.arpa und 253.253.192.in-addr.arpa) ersetzt.

NS record:
Die n�chste Zeile, die in fast jede Datei der DNS-Datenbank eingesetzt wird, ist der NS (name server) record, welcher auf den oder die Name Server-Namen verweist.:
 

NS record
alcomat.com.      IN NS     augustiner.alcomat.com. 
alcomat.com.      IN NS     tubo.alcomat.com. 

Diese records weisen daraufhin, da� zwei Name Server f�r die Domain "alcomat.com" eingesetzt werden. Die Nameserver sind auf den hosts "augustiner" und "tubo" installiert. Rechner wie "tubo", die wegen ihrer Funktion als gateway mehr als ein Netzwerkinterface besitzen (miltihomed hosts), in unserem Falle zwei Ethernetkarten, sind empfehlenswerte Beispiele f�r einen Name Server, da diese unter dauernder Ben�tzung stehen: Erstens werden sie von Rechnern aus mehr als einem Netz angefahren und wenn sie dann noch als Router dienen, werden sie selten runtergefahren da sie eine besondere Wartung erfahren.

Genau so wie wir mit den SOA records verfahren sind, f�gen wir NS records in die Dateien named.249 y named.253.

Adressen und Alias records:
Der n�chste Schritt besteht darin Verweise von Hostname auf IP-Adressen zu bilden. Die folgenden records f�gen wir in die Datei named.hosts.

A record
;
;Die Hostadressen
;
localhost.alcomat.com.   IN A      127.0.0.1
mahou.alcomat.com.       IN A      192.253.253.2
augustiner.alcomat.com.  IN A      192.253.253.3
polar.alcomat.com.       IN A      192.253.253.4
;
; Hosts mit zwei Ethernetkarten (multihomed)
;
tubo.alcomat.com.        IN A      192.253.253.1
tubo.alcomat.com.        IN A      192.249.249.1
;
; Aliase
;
edel.alcomat.com.        IN CNAME  augustiner.alcomat.com.
pol.alcomat.com.         IN CNAME  polar.alcomat.com.
tu.alcomat.com.          IN CNAME  tubo.alcomat.com.
tub249.alcomat.com.      IN A      192.249.249.1
tub253.alcomat.com.      IN A      192.253.253.1

Die ersten beiden Bl�cke werden sie jetzt kaum mehr �berraschen. Das "A" steht f�r Adresse (address) und jeder record weist von einem Hostnamen auf die dazugeh�rige IP-Adresse. Tubo soll sowohl als Router als auch als Gate agieren. Deshalb weist er zwei Adressen und zwei ressource records auf.

Der dritte Block beinhaltet die Aliastabelle. F�r die ersten Aliase benutzen wir den CNAME record (canonical hostname). Dar�berhinaus bilden wir noch Adressrecords f�r die restlichen beiden Aliase.

Wenn ein Name Server einen Namen sucht und dabei auf einen CNAME record st��t, ersetzt er den Alias durch den kanonischen Hostnamen und setzt seine Suche nach der entsprechenden IP-Adresse fort. Wird nun beispielsweise ein Name wie "tu" gesucht, wird der Name Server auf den Namen "tubo" verwiesen, worauf er dann die beiden IP Adressen 192.249.249.1 und 192.253.253.1 zur�ckerh�lt.

Die zwei letzten Zeilen beschreiben einen speziellen Fall. Wir gehen davon aus da� ein Gateway wie "tubo" im Netz installiert ist und sie m�chten testen ob die beiden Interfaces funktionieren. Hierf�r wird ein "ping" an das Interface gesandt um zu �berpr�fen ob es antwortet. Wenn sie nun ein "ping tubo" abschicken, wird der Name Server beide IPs zur�ckgeben. In unserer Tabelle haben wir keine Aliasnamen f�r tub249 und tub253 gesetzt, damit wir beide Interfaces getrennt anspechen k�nnen. Um also eine multiple Antwort zu vermeiden bzw getrennte Namen zum Test der Interfaces zu haben, wurden nur A records auf die Namen gesetzt. Um schlie�lich die Funtion des Interfaces 192.249.249.1 von "tubo" zu testen, senden sie ein "ping tub249", da sich dies nur auf ein Interface bezieht. das ganze funktioniert entsprechend mit "tub153".

Hierf�r eine allgemeine Regel:

Besitzt ein Rechner mehr als ein Netzwerkinterface (multihomed host), wird ein Adress-record "A" mit einem Alias gebildet, der eindeutig ist f�r diese Adresse.

Nebenbei sei noch erw�hnt, da� die Ben�tzer des Systems von der Existens der Adressen tub249 und tub253 nichts zu wissen brauchen, da diese lediglich dem Administrator zu Pr�fzwecken dienen.

 

PTR Records
Dieser Recordtyp beschreibt den Verweis von IP-Adressen auf Hostnamen. Die Datei "named.249" bildet Verweise von IP-Adressen auf Hostnamen f�r das Netz 192.249.249. F�r diesen Verweis wird der ressource record PTR (pointer) verwendet. Es wird ein record f�r jeden host des Netzes gesetzt. (Erinnern sie sich da� das DNS Namen f�r Adressen sucht). Die Adresse wird in umgekehrter Reihenfolge dargestellt und die domain in-addr.arpa angeh�ngt.

Die folgende Darstellung zeigt die PTR records f�r das Netz 192.249.249.

PTR record
1.249.249.192.in-addr.arpa.     IN PTR     tubo.alcomat.com.
2.249.249.192.in-addr.arpa.     IN PTR     whisky.alcomat.com.
3.249.249.192.in-addr.arpa.     IN PTR     brandy.alcomat.com.
4.249.249.192.in-addr.arpa.     IN PTR     vodka.alcomat.com.

 
Erinnern wir uns daran, da� tubo zwei Adressen hat, da er ja �ber zwei Netzwerkkarten verf�gt. Trotzdem erschein tubo hier nur einmal, da diese Datei lediglich Verbindungen zum Netz 192.249.249 darstellt und tubo eben nur mit der Adresse 192.249.249.1 dort erscheint. Entsprechendes gilt f�r Netz 192.253.253.

(5.3) Die kompletten Datenbankdateien f�r unsere fiktive Domain 

Die Datei f�r die Hosttabelle der Domain alcomat.com

named.hosts
alcomat.com.   IN SOA augustiner.alcomat.com.  juan.mahou.alcomat.com. (
                                  1          ; Serial for updates
                                  10800      ; Refresh after 3 hours
                                  3600       ; Retry after 1 hours
                                  604800     ; Expire after 1 week
                                  86400 )    ; Minimum TTL of 1 week
;
; Unsere nameserver
;
alcomat.com.             IN NS     augustiner.alcomat.com. 
alcomat.com.             IN NS     tubo.alcomat.com. 
;
; Hostadressen
;
localhost.alcomat.com.   IN A      127.0.0.1
mahou.alcomat.com.       IN A      192.253.253.2
augustiner.alcomat.com.  IN A      192.253.253.3
polar.alcomat.com.       IN A      192.253.253.4
whisky.alcomat.com.      IN A      192.249.249.2
brandy.alcomat.com.      IN A      192.249.249.3
vodka.alcomat.com.       IN A      192.249.249.4
;
; multihomed hosts
;
tubo.alcomat.com.        IN A      192.253.253.1
tubo.alcomat.com.        IN A      192.249.249.1
;
; Aliase
;
edel.alcomat.com.        IN CNAME  augustiner.alcomat.com.
pol.alcomat.com.         IN CNAME  polar.alcomat.com.
tu.alcomat.com.          IN CNAME  tubo.alcomat.com.
tub249.alcomat.com.      IN A      192.249.249.1
tub253.alcomat.com.      IN A      192.253.253.1

 

Die Dateien named.249 und named.253 f�r den Verweis von IP-Adressen nach Domainnamen

named.249
249.249.192.in-addr.arpa. IN SOA augustiner.alcomat.com.  juan.mahou.alcomat.com. (
                                  1          ; Serial for updates
                                  10800      ; Refresh after 3 hours
                                  3600       ; Retry after 1 hours
                                  604800     ; Expire after 1 week
                                  86400 )    ; Minimum TTL of 1 week
;
; Nameserver
;
249.249.192.in-addr.arpa.         IN NS      augustiner.alcomat.com. 
249.249.192.in-addr.arpa.         IN NS      tubo.alcomat.com. 
;
; Verweise von Adressen zu Namen
;
1.249.249.192.in-addr.arpa.       IN PTR     tubo.alcomat.com.
2.249.249.192.in-addr.arpa.       IN PTR     whisky.alcomat.com.
3.249.249.192.in-addr.arpa.       IN PTR     brandy.alcomat.com.
4.249.249.192.in-addr.arpa.       IN PTR     vodka.alcomat.com.

 

named.253
253.253.192.in-addr.arpa. IN SOA augustiner.alcomat.com.  juan.mahou.alcomat.com. (
                                  1          ; Serial for updates
                                  10800      ; Refresh after 3 hours
                                  3600       ; Retry after 1 hours
                                  604800     ; Expire after 1 week
                                  86400 )    ; Minimum TTL of 1 week
;
; Nameserver
;
253.253.192.in-addr.arpa.         IN NS      augustiner.alcomat.com. 
253.253.192.in-addr.arpa.         IN NS      tubo.alcomat.com. 
;
; Verweise von Adressen nach Namen
;
1.253.253.192.in-addr.arpa.       IN PTR     tubo.alcomat.com.
2.253.253.192.in-addr.arpa.       IN PTR     mahou.alcomat.com.
3.253.253.192.in-addr.arpa.       IN PTR     augustiner.alcomat.com.
4.253.253.192.in-addr.arpa.       IN PTR     polar.alcomat.com.

 

Die Loopback Adresse

Ein Nameserver ben�tigt eine zus�tzliche Datei f�r das Loopback-Netz: named.local. Es handelt sich hierbei um die Adresse die nur f�r den Host selbst von Bedeutung ist. Die Netzadresse des Loopback ist (fast) immer 127.0.0 und die des hosts 127.0.0.1.

named.local
0.0.127.in-addr.arpa.     IN SOA augustiner.alcomat.com.  juan.mahou.alcomat.com. (
                                  1          ; Serial for updates
                                  10800      ; Refresh after 3 hours
                                  3600       ; Retry after 1 hours
                                  604800     ; Expire after 1 week
                                  86400 )    ; Minimum TTL of 1 week
;
; Nameserver
;
0.0.127.in-addr.arpa.         IN NS      augustiner.alcomat.com. 
0.0.127.in-addr.arpa.         IN NS      tubo.alcomat.com. 
;
; Die inverse Adressierung f�r den Loopback
;
0.0.127.in-addr.arpa.         IN PTR     localhost.

 

Die Datei named.cache

Diese Datei enth�lt die Namen und Adressen von allen Root-Nameservern des Internet. Wenn sie nicht vorhaben ihr Netz ans Internet anzuschleissen, ist diese Datei f�r ihr DNS-Setup ohne Belang.
Obwohl das Softwarepaket BIND normalerweise diese Datei (named.root oder named.cache) liefert, ist es empfehlenswert die aktuelle Datei via anonymous ftp von der Adresse: ftp.ts.internic.net(198.41.0.5) zu beziehen. Da es sich um eine Tabelle handelt, die f�r (fast) jeden Name Server gleich ist und automatisch mit dem BIND-Paket installiert wird, m�chte ich nicht weiter darauf eingehen. Das einzige was sie wissen sollten ist der tas�chliche Name dieser Datei um den entsprechenden Verweis in die Startdatei von named (named.boot) setzen zu k�nnen.

 

Die Startdatei: named.boot

Was uns schlie�lich noch fehlt ist eine Datei, die unsere Datenbankdateien zusammenf�hren, oder besser gesagt erwartet der Name Server eine Datei die angibt wo sich die einzelnen Datenbankdateien des DNS befinden.

BIND sucht by default die Datei /etc/named.boot. Die Datenbankdateien unseres Beispiels befinden sich in dem Verzeichnis /usr/local/named. Es steht ihnen nat�rlich wieder frei andere Verzeichnisse zu w�hlen, dennoch sollten die Dateien aus Paltzgr�nden nicht gerade im Rootverzeichnissystem liegen.

named.boot
directory	/usr/local/named
primary    alcomat.com                named.hosts
primary    249.249.192.in-addr.arpa   named.249
primary    253.253.192-in-addr.arpa   named.253
primary    0.0.127.in-addr.arpa       named.local
cache      .                          named.cache

Wenn sie nun alle Verzeichnisse estellt haben, sollten sie den D�mon "named" in ihrer Systeminitialisierungsdatei aktivieren, soda� er automatisch beim Hochfahren des Systems gestartet wird.

(5.4) Abk�rzungen

Bisher haben wir sehr ausf�hrliche Dateien gebildet um die Erkl�rung zu erleichtern. Normalerweise werden die Dateien mit einer Reihe von Abk�rzungen verfasst.

Der Ursprung (origin)
Die zweite Spalte der Startdatei "named.boot" verweist immer auf eine Domain. Diese Domain ist der Schl�ssel f�r die gebr�uchlichste Abk�rzung, da es den Ursprung f�r alle Daten innerhalb der jeweiligen Datenbankdatei darstellt.
!! Der Ursprung wird automatisch an alle Namen angeh�ngt, die nicht mit einem Punkt enden !! ("mahou.alcomat.com" w�rde dann als "mahou.alcomat.com.alcomat.com" gelesen werden. Desweiteren hat jede Datenbankdatei einen eigenen Ursprung.

Die Adresse von "mahou" in der Datei named.hosts:
mahou.alcomat.com.	IN A	192.253.253.2

kann man dann wie folgt schreiben:
mahou			IN A	192.253.253.2

Wir definierten die folgende Adresse in der Datei named.249:
2.249.249.192.in-addr.arpa.	IN PTR	whisky.alcomat.com.
Da 249.249.192.in-addr.arpa der Ursprung f�r diese Datei ist k�nnen wir uns einige schreibarbeit sparen.
2				IN PTR	whisky.alcomat.com.					

Die Notation @
Ist der Domainname gleich dem Ursprung, kann er auch mit einem @ abgebildet werden. Dies erscheint recht h�ufig mit den SOA record:

@	   IN SOA augustiner.alcomat.com.  juan.mahou.alcomat.com. (
                                  1          ; Serial for updates
                                  10800      ; Refresh after 3 hours
                                  3600       ; Retry after 1 hours
                                  604800     ; Expire after 1 week
                                  86400 )    ; Minimum TTL of 1 week

Wiederholung von Namen
Ist die ersten Spalte eines ressource records ohne Eintrag, wird automatisch der Name des vorherigen ressource records gelesen. Dies erleichtert die Arbeit wenn man mehrere records f�r einen Namen darstellt.

tubo			IN A      192.253.253.1
			IN A      192.249.249.1

Abschlie�end presentiere ich ihnen die abgek�rzte Datei named.hosts. Es ist eine recht gute �bung die �nderungen f�r die �brigen Dateien vorzunehmen ;-))

named.hosts (mit Abk�rzungen)
@   IN SOA 	augustiner  	juan.mahou (
                                  1          ; Serial for updates
                                  10800      ; Refresh after 3 hours
                                  3600       ; Retry after 1 hours
                                  604800     ; Expire after 1 week
                                  86400 )    ; Minimum TTL of 1 week
;
; Die Nameserver (der Name @ ist bereits enthalten )
;
                            IN NS     augustiner.alcomat.com
                            IN NS     tubo.alcomat.com. 
; Nur in dieser Datei kann der Domainname(alcomat.com)f�r die Nameserver 
; weggelassen werden, da named.host den gleichen Ursprung hat! 
;
; Die Hostadressen
;
localhost                   IN A      127.0.0.1
mahou                       IN A      192.253.253.2
augustiner                  IN A      192.253.253.3
polar                       IN A      192.253.253.4
whisky                      IN A      192.249.249.2
brandy                      IN A      192.249.249.3
vodka                       IN A      192.249.249.4
tubo                        IN A      192.253.253.1
                            IN A      192.249.249.1
;
; Unser multihomed host
;
tub249                      IN A      192.249.249.1
tub253                      IN A      192.253.253.1
;
; Aliase
;
edel                        IN CNAME  augustiner
pol                         IN CNAME  polar
tu                          IN CNAME  tubo

 

(5.5) Die Resolverbibliothek

Das Gegenst�ck zum Nameserver ist die Resolverbibliothek, welche aus einer Gruppe von Funktionen besteht, die der Standard C-Bibliothek unter LinuX angeh�ren. Die wichtigsten Resolverroutinen sind folgende:

Die wichtigste Datei ist host.conf, welche die die Funktionen des Resolvers steuert. Sie bestimmt welche Dienste von dem Resolver in Anspruch genommen werden und in welcher Reihenfolge. F�r unser Netz ben�tigen wir nur die Optionen: order und multi.

Die Datei /etc/host.conf unseres Beispiel weist den Resolver an, zuerst DNS, und danach die Tabelle /etc/hosts zu konsultieren.

/etc/host.conf
# /etc/host.conf
# Wir ben�tzen named und die Hosttabelle:/etc/hosts
order   bind hosts
# mehrfache IPs erlaubt (nur f�r /etc/hosts)
multi   on

Da unser Resolver nun DNS ben�tzt, m�ssen wir ihm noch mitteilen welchen Nameserver er konsultieren soll. Daf�r existiert die Datei: resolv.conf.
Die wichtigste Option in resolv.conf ist nameserver, welche den entsprechenden Nameserver angibt. Es k�nnen bis zu drei Nameservereintrage vorgenommen werden. Es ist generell zu empfehlen den verl�sslichsten Nameserver zuerst zu setzen, da die Server der Reihe nach angefahren werden.
Desweiteren existieren noch zwei zus�tzliche Optionen - domain und search - welche auf Domainnamen zeigen, die dann automatisch an Hostnamen geh�ngt werden, wenn der Resolver die komplette Adresse nicht kennt. F�r unser Beispiel bedeutet dies wieder, da� im Falle des Befehls "ftp mahou", automatisch die Domain "alcomat.com" abgeh�ngt wird. Somit sind sie nicht immer gezwungen den kompletten Namen zu schreiben. Der Unterschied zwischen den genannten Optionen liegt darin, da� domain nur eine Domainangabe erlaubt, wohingegen search mehrere Eintr�ge zul��t. Der Nachteil einer ganzen Liste von Domains zeigt sich allerdings in l�ngeren Wartezeiten.

/etc/resolv.conf
# /etc/resolv.conf
# Die Domain von Distribution Alcomato
domain       alcomat.com
#
# Der Nameserver 
# Als zweite IP k�nnten sie nun die IP ihres Internet Providers setzen.
nameserver   192.253.253.1

 

(5.6) Der Test mit nslookup

Bevor wir das Tool nslookup einstzen, welches im Paket BIND enthalten ist, wollen wir das System auf syslog-Fehler �berpr�fen. Wenn sie "named" bereits in ihrer Systeminitialisierungsdatei aktiviert haben und "named" automatisch beim Systemstart gemountet wird, sollten sie beim booten einen Hinweis entdecken da� "named" aktiv ist. Sollten sie allerdings bevorzugen den D�mon manuell zu starten, geben sie folgendes am rootprompt ein:

# /etc/named -b /etc/named.boot (nur root kann das ausf�hren!)

F�r den Fall, da� ein Fehler vorliegt, k�nne dann etwa folgendes erscheinen:
Feb 12 21:16:48 tubo named [3221]: named hosts Line 15: database format error (192.249.249.3), was ihnen die Datei und die Zeile angibt, wo sich der Fehler befindet.

Nachdem alle Fehler behoben sind schicken Sie ein
# kill -HUP 'cat /etc/named.pid'
ab, damit der Nameserver seine Datenbankdateien erneut liest. (Vielleicht lassen sie sich vorsichtshalber die Syslogeintr�ge noch einmal auflisten)

 

Die Tests mit nslookup

Mit nslookup kann jeder ressource record und Nameserver ausgetestet werden. Wir wollen hier nur die elementaren Tests auff�hren.

Suche im lokalen Netz:

  • Die Suche nach einem lokalen Hostnamen:

    # nslookup vodka
    Server: tubo.alcomat.com
    Address: 192.253.253.1

    Name: vodka.alcomat.com
    Address: 192.245.245.4
 
  • Die Suche nach einer lokalen IP-Adresse:

    #
    nslookup 192.245.245.2
    Server: tubo.alcomat.com
    Address: 192.253.253.1

    Name: whisky.alcomat.com
    Address; 192.245.245.2

Wenn diese Tests auf die dargestellte Weise fuktioniert haben, arbeitet ihr Nameserver korrekt f�r ihre Domain.

Suche nach entfernten Rechnern:
F�r den Fall, da� ihr Netz �ber eine Internetanbindung verf�gt, ist es angebracht nslookup auch dort zu testen. Es ist wirklich erstaunlich was man mit dem Tool so alles machen kann ;-)

 

  • Die Suche nach einem entfernten Hostnamen:

    # nslookup ftp.uu.net
    Server: tubo.alcomat.com
    Address: 192.253.253.1

    Name: ftp.uu.net
    Address: 192.48.96.9
 
  • Die Suche nach einer entfernten IP-Adresse::

    # nslookup 192.48.96.9
    Server: tubo.alcomat.com
    Address: 192.253.253.1

    Name: ftp.uu.net
    Address: 192.48.96.9

Wenn nun diese beiden Tests noch gelingen, wei� ihr Nameserver wo sich die Rootnameserver des Internet befinden (Datei: named.cache) und wie er selbige zu kontaktieren hat um Informationen �ber entfernte Netze zu beziehen.

 


Literatur:

�ber den Author

Andreas J Gundacker ist Diplom Kaufmann mit starker Neigung zur Informationstechnologie.
LinuX hat ihm dabei geholfen seine privaten Studien der Netzwerktechnik zu realisieren.
Als dieser Artikel geschrieben wurde, arbeitete er als Assistent der Gesch�ftsleitung bei Kl�ckner Moeller-Somerinca in Carcas/Venezuela. Dieser Artikel wurde urspr�nglich in spanischer Sprache verfa�.

Webpages maintained by Miguel Ángel Sepúlveda
© Andreas J Gundacker 1998
Übersetzt von:Andreas J Gundacker
LinuxFocus 1998