/usr/share/doc/HOWTO/de-html/DE-DNS-HOWTO-5.html is in doc-linux-de 2003.10-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.65">
<TITLE>DNS HOWTO: Eine existierendes Domainbeispiel </TITLE>
<LINK HREF="DE-DNS-HOWTO-6.html" REL=next>
<LINK HREF="DE-DNS-HOWTO-4.html" REL=previous>
<LINK HREF="DE-DNS-HOWTO.html#toc5" REL=contents>
</HEAD>
<BODY>
<A HREF="DE-DNS-HOWTO-6.html"><IMG SRC="next.png" ALT="Weiter"></A>
<A HREF="DE-DNS-HOWTO-4.html"><IMG SRC="prev.png" ALT="Zurück"></A>
<A HREF="DE-DNS-HOWTO.html#toc5"><IMG SRC="toc.png" ALT="Inhalt"></A>
<HR>
<H2><A NAME="DE-DNS-HOWTO-real-example"></A> <A NAME="s5">5.</A> <A HREF="DE-DNS-HOWTO.html#toc5">Eine existierendes Domainbeispiel </A></H2>
<P>Leser haben mir vorgeschlagen, dass ich ein existierendes Beispiel einer
funktionierenden Domain zusätzlich zu dem Lehrbeispiel hinzufüge.</P>
<P>Ich benutze dieses Beispiel mit Erlaubnis von David Bullock von LAND-5.
Diese Dateien stammen vom 24. September 1996 und sind nachträglich von mir
editiert worden, damit sie die Bind8-Restriktionen und Erweiterungen
enthalten. Also unterscheiden sich diese Daten ein wenig von denen, die man
erhält, wenn einer der LAND-5 Nameserver befragt wird.</P>
<H2><A NAME="ss5.1">5.1</A> <A HREF="DE-DNS-HOWTO.html#toc5.1">/etc/named.conf (bzw. /var/named/named.conf)</A>
</H2>
<P>Hier findet man die Zonenabschnitte, für die zwei benötigten reversen
Zonen: Das 127.0.0-Netz und auch das LAND-5 <CODE>206.6.177</CODE>-Subnetz.
Ausserdem ist eine primary-Zeile für die LAND-5-Forward-Zone <CODE>land-5.com</CODE>
enthalten. Ausserdem ist zu beachten, dass David die Dateien nicht in ein
Verzeichnis mit dem Namen <CODE>pz</CODE> legt, wie ich das in dieser HOWTO gemacht
habe. Er benutzt ein Verzeichnis namens <CODE>zone</CODE>.</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
// Boot-Datei fuer den LAND-5 Nameserver
options {
directory "/var/named";
};
zone "." {
type hint;
file "root.hints";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "zone/127.0.0";
};
zone "land-5.com" {
type master;
file "zone/land-5.com";
};
zone "177.6.206.in-addr.arpa" {
type master;
file "zone/206.6.177";
};
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Sofern man dieses Beispiel in die eigene <CODE>named.conf</CODE>-Datei
packt, wovon abzuraten ist, sollte man bitte auch noch ein
»<CODE>notify no;</CODE>« in die Zonenabschnitte für die zwei
<CODE>land-5</CODE>-Zonen schreiben, um Konflikte zu vermeiden.</P>
<H2><A NAME="ss5.2">5.2</A> <A HREF="DE-DNS-HOWTO.html#toc5.2">/var/named/root.hints</A>
</H2>
<P>Hierbei ist zu beachten, dass diese Datei relativ dynamisch ist. Die hier
aufgelistete ist alt. Jetzt sollte besser eine mit dig neu erzeugte benutzt
werden, wie bereits beschrieben wurde.</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
; <<>> DiG 8.1 <<>> @A.ROOT-SERVERS.NET.
; (1 server found)
;; res options: init recurs defnam dnsrch
;; got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10
;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13
;; QUERY SECTION:
;; ., type = NS, class = IN
;; ANSWER SECTION:
. 6D IN NS G.ROOT-SERVERS.NET.
. 6D IN NS J.ROOT-SERVERS.NET.
. 6D IN NS K.ROOT-SERVERS.NET.
. 6D IN NS L.ROOT-SERVERS.NET.
. 6D IN NS M.ROOT-SERVERS.NET.
. 6D IN NS A.ROOT-SERVERS.NET.
. 6D IN NS H.ROOT-SERVERS.NET.
. 6D IN NS B.ROOT-SERVERS.NET.
. 6D IN NS C.ROOT-SERVERS.NET.
. 6D IN NS D.ROOT-SERVERS.NET.
. 6D IN NS E.ROOT-SERVERS.NET.
. 6D IN NS I.ROOT-SERVERS.NET.
. 6D IN NS F.ROOT-SERVERS.NET.
;; ADDITIONAL SECTION:
G.ROOT-SERVERS.NET. 5w6d16h IN A 192.112.36.4
J.ROOT-SERVERS.NET. 5w6d16h IN A 198.41.0.10
K.ROOT-SERVERS.NET. 5w6d16h IN A 193.0.14.129
L.ROOT-SERVERS.NET. 5w6d16h IN A 198.32.64.12
M.ROOT-SERVERS.NET. 5w6d16h IN A 202.12.27.33
A.ROOT-SERVERS.NET. 5w6d16h IN A 198.41.0.4
H.ROOT-SERVERS.NET. 5w6d16h IN A 128.63.2.53
B.ROOT-SERVERS.NET. 5w6d16h IN A 128.9.0.107
C.ROOT-SERVERS.NET. 5w6d16h IN A 192.33.4.12
D.ROOT-SERVERS.NET. 5w6d16h IN A 128.8.10.90
E.ROOT-SERVERS.NET. 5w6d16h IN A 192.203.230.10
I.ROOT-SERVERS.NET. 5w6d16h IN A 192.36.148.17
F.ROOT-SERVERS.NET. 5w6d16h IN A 192.5.5.241
;; Total query time: 215 msec
;; FROM: roke.uio.no to SERVER: A.ROOT-SERVERS.NET. 198.41.0.4
;; WHEN: Sun Feb 15 01:22:51 1998
;; MSG SIZE sent: 17 rcvd: 436
</PRE>
</CODE></BLOCKQUOTE>
</P>
<H2><A NAME="ss5.3">5.3</A> <A HREF="DE-DNS-HOWTO.html#toc5.3">/var/named/zone/127.0.0</A>
</H2>
<P>Hier ist nur das Minimum enthalten: Der obligatorische SOA-Eintrag und
ein Eintrag, der 127.0.0.1 in <CODE>localhost</CODE> umwandelt. Beide Einträge sind
nötig, allerdings sollte diese Datei nicht mehr enthalten. Sie wird
vermutlich niemals mehr geändert werden müssen, es sei denn der Nameserver
oder die hostmaster-Adresse ändert sich.</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
@ IN SOA land-5.com. root.land-5.com. (
199609203 ; Serial
28800 ; Refresh
7200 ; Retry
604800 ; Expire
86400) ; Minimum TTL
NS land-5.com.
1 PTR localhost.
</PRE>
</CODE></BLOCKQUOTE>
</P>
<H2><A NAME="ss5.4">5.4</A> <A HREF="DE-DNS-HOWTO.html#toc5.4">/var/named/zone/land-5.com</A>
</H2>
<P>Hier sieht man den notwendigen SOA-Eintrag und NS-Einträge. Man kann
erkennen, dass er einen Zweit (Secondary)-Nameserver mit der Adresse
<CODE>ns2.psi.net</CODE> hat. Es sollte übrigens <EM>immer</EM> ein zweiter Nameserver
als Backup-Server zur Verfügung stehen. Außerdem kann man sehen, dass es
einen Hauptrechner gibt, der <CODE>land-5</CODE> heißt und viele verschiedene
Internetdienste anbietet - und dass dieser als Alternative zu A-Einträgen
mit CNAMEs realisiert wurde.</P>
<P>Der SOA-Eintrag enthält die Informationen über den Ursprung der
Zonendatei (<CODE>land-5.com</CODE>) und dass die Kontaktperson <CODE>root@land-5.com</CODE>
ist. <CODE>hostmaster</CODE> ist die meistens benutzte Adresse für die
Kontaktperson. Die Seriennummer ist in dem Format jjjjmmtt, wobei noch die
Seriennummer des laufenden Tages angehängt wird; vermutlich handelt es sich
um die sechste Version der Zonendatei vom 20. September 1996. Man sollte
immer daran denken, dass die Seriennummer monoton ansteigen <EM>muss</EM>. Da
dieses Beispiel eine <EM>einstellige</EM> Nummer für die Seriennnummer nutzt,
können maximal neun Änderungen an einem Tag gemacht werden können.
Darum empfehle ich die Verwendung von zwei Stellen für die Seriennummer.</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
@ IN SOA land-5.com. root.land-5.com. (
199609206 ; serial, todays date + todays serial #
8H ; refresh, seconds
2H ; retry, seconds
1W ; expire, seconds
1D ) ; minimum, seconds
NS land-5.com.
NS ns2.psi.net.
MX 10 land-5.com. ; Primary Mail Exchanger
TXT "LAND-5 Corporation"
localhost A 127.0.0.1
router A 206.6.177.1
land-5.com. A 206.6.177.2
ns A 206.6.177.3
www A 207.159.141.192
ftp CNAME land-5.com.
mail CNAME land-5.com.
news CNAME land-5.com.
funn A 206.6.177.2
;
; Workstations
;
ws-177200 A 206.6.177.200
MX 10 land-5.com. ; Primary Mail Host
ws-177201 A 206.6.177.201
MX 10 land-5.com. ; Primary Mail Host
ws-177202 A 206.6.177.202
MX 10 land-5.com. ; Primary Mail Host
ws-177203 A 206.6.177.203
MX 10 land-5.com. ; Primary Mail Host
ws-177204 A 206.6.177.204
MX 10 land-5.com. ; Primary Mail Host
ws-177205 A 206.6.177.205
MX 10 land-5.com. ; Primary Mail Host
; {Many repetitive definitions deleted - SNIP}
ws-177250 A 206.6.177.250
MX 10 land-5.com. ; Primary Mail Host
ws-177251 A 206.6.177.251
MX 10 land-5.com. ; Primary Mail Host
ws-177252 A 206.6.177.252
MX 10 land-5.com. ; Primary Mail Host
ws-177253 A 206.6.177.253
MX 10 land-5.com. ; Primary Mail Host
ws-177254 A 206.6.177.254
MX 10 land-5.com. ; Primary Mail Host
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Bei genauerer Betrachtung der Nameserver von LAND-5, fällt auf, dass die
Rechnernamen immer die Form <CODE>ws_</CODE><EM>nummer</EM> haben. Seit einer der
letzten der Bind-4-Versionen achtet der named auf Einschränkungen, welche
Zeichen in einem Rechnernamen vorkommen dürfen. Da die angegeben Namen mit
Bind-8 auf keinen Fall funktionieren würden, habe ich in der HOWTO die
Unterstriche »_« durch einen Bindestrich »-« ersetzt.</P>
<P>Ich sollte noch darauf hinweisen, dass die Workstations keine
individuellen Namen haben, sondern aus einem Prefix mit den angehängten
letzten beiden Teilen der IP-Adresse bestehen. Das vereinfacht die
Wartung zwar erheblich, es ist aber sehr unpersönlich.</P>
<P>Man kann außerdem sehen, dass <CODE>funn.land-5.com</CODE> ein Alias für
<CODE>land-5.com</CODE> ist, dass aber ein A-Eintrag anstelle eines CNAME-Eintrages
gewählt wurde. Wie ich oben bereits sagte, ist diese Vorgehensweise der
Nutzung von CNAMES vorzuziehen.</P>
<H2><A NAME="ss5.5">5.5</A> <A HREF="DE-DNS-HOWTO.html#toc5.5">/var/named/zone/206.6.177</A>
</H2>
<P>Diese Datei wird weiter unten beschrieben.</P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
@ IN SOA land-5.com. root.land-5.com. (
199609206 ; Serial
28800 ; Refresh
7200 ; Retry
604800 ; Expire
86400) ; Minimum TTL
NS land-5.com.
NS ns2.psi.net.
;
; Servers
;
1 PTR router.land-5.com.
2 PTR land-5.com.
2 PTR funn.land-5.com.
;
; Workstations
;
200 PTR ws-177200.land-5.com.
201 PTR ws-177201.land-5.com.
202 PTR ws-177202.land-5.com.
203 PTR ws-177203.land-5.com.
204 PTR ws-177204.land-5.com.
205 PTR ws-177205.land-5.com.
; {Many repetitive definitions deleted - SNIP}
250 PTR ws-177250.land-5.com.
251 PTR ws-177251.land-5.com.
252 PTR ws-177252.land-5.com.
253 PTR ws-177253.land-5.com.
254 PTR ws-177254.land-5.com.
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Die reverse Zone ist der unbeliebteste Teil der Einrichtung eines
Nameservers. Sie dient dazu, den Rechnernamen herauszufinden, wenn nur die
IP-Adresse bekannt ist. Wenn man zum Beispiel einen IRC-Server in Norwegen
betreibt und nur Clients aus Norwegen und anderen Skandinavischen Ländern
zulassen möchte, hat man die Möglichkeit, durch eine C-Bibliothek die
IP-Nummer der
gerade verbundenen Maschine zu bekommen, da diese mit jedem Datenpaket über
das Netz geschickt wird. Jetzt kann man eine Funktion namens
<CODE>gethostbyaddr()</CODE> aufrufen, die den Namen anhand einer
übergebenen IP-Nummer herausfindet. <CODE>gethostbyaddr()</CODE> fragt dazu
einen DNS-Server, der dann das DNS-System nach einem zu der
IP-Nummer gehörigen Namen durchsucht. Wenn die Verbindung zum Beispiel
von ws-177200.land-5.com ausgeht, liefert die C-Funktion die IP-Adresse
206.6.177.200. Um den Namen des Rechners herauszufinden, müssen wir
<CODE>200.177.6.206.in-addr.arpa</CODE> finden. Der DNS-Server geht dann über die
<CODE>arpa.</CODE>-Server, dann findet er <CODE>in-addr.arpa.</CODE>-Server, folgt der Route
über 206, 6 und zum Schluss findet er den Server für die
<CODE>177.6.206.in-addr.arpa</CODE>-Zone bei LAND-5. Dort wird er schlussendlich die
Antwort bekommen, dass ein »<CODE>PTR ws-177200.land-5.com</CODE>«-Eintrag
existiert. Das bedeutet, dass der zu der IP-Nummer <CODE>206.6.177.200</CODE> gehörende
Name <CODE>ws-177200.land-5.com</CODE> ist. Genau wie die obige Beschreibung ist auch
das ein wenig fiktiv - entspricht aber ungefähr dem tatsächlichen Ablauf.</P>
<P>Zurück zum IRC-Server-Beispiel. Der IRC-Server nimmt nur Verbindungen aus
Skandinavischen Ländern wie <CODE>*.no</CODE>, <CODE>*.se</CODE> oder <CODE>*.dk</CODE> an. Der
Rechner <CODE>ws-177200.land-5.com</CODE> passt zu keinem der genannten Länder,
darum wird der Server die Verbindung ablehnen. Wenn es <EM>keine</EM>
reverse Umwandlung für <CODE>206.6.177.200</CODE> durch die <CODE>inn-addr.arpa</CODE>-Zone
gäbe, würde der Server den Rechnernamen nicht herausfinden können und
müsste die IP-Nummer <CODE>206.6.177.200</CODE> mit <CODE>*.no</CODE>, <CODE>*.se</CODE> und <CODE>*.dk</CODE>
vergleichen - keine Domain würde zutreffen.</P>
<P>Es gibt viele Leute, die behaupten, dass reverse Mappings nur für Server
wichtig sind oder überhaupt keinen Sinn haben. Das ist falsch: Viele FTP,
News, IRC und sogar einige HTTP (WWW)-Server akzeptieren <EM>keine</EM>
Verbindungen von Rechnern ohne Namen. Also sind reverse Mappings
ein <EM>muss</EM> bei der Verwaltung eines eigenen Nameservers.</P>
<HR>
<A HREF="DE-DNS-HOWTO-6.html"><IMG SRC="next.png" ALT="Weiter"></A>
<A HREF="DE-DNS-HOWTO-4.html"><IMG SRC="prev.png" ALT="Zurück"></A>
<A HREF="DE-DNS-HOWTO.html#toc5"><IMG SRC="toc.png" ALT="Inhalt"></A>
</BODY>
</HTML>
|