Ich brauche Hilfe bei der Konfiguration eines DNS-Servers in Debian 9 (Stretch). Ich folgedieses Tutorial, aber ich glaube, ich mache etwas falsch ...
In meinem Fall nehmen wir an, dass ich eine Domäne namens example.com besitze und mein Server die IP-Adresse 203.0.113.141 hat.
Zuerst habe ich die Zonen in meiner named.conf.local
Datei erstellt. Diese Datei sieht nun folgendermaßen aus:
zone "example.com" IN { // Domain name
type master; // Primary DNS
file "/etc/bind/fwd.example.com.db"; // Forward lookup file
allow-update { none; }; // Since this is the primary DNS, it
}; // should be none.
zone "141.ip-203-0-113.net" IN { // Reverse lookup name, it was given from my server provider
type master; // Primary DNS
file "/etc/bind/rev.example.com.db"; //Reverse lookup file
allow-update { none; }; //Since this is the primary DNS, it should be none.
};
Anschließend habe ich beide Dateien mit diesem Inhalt erstellt:
fwd.beispiel.com.db:
$TTL 604800
@ IN SOA example.com. root.example.com. (
21 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
;Name Server Information
IN NS dns.example.com.
;IP address of Name Server
dns IN A 203.0.113.141
rev.beispiel.com.db:
$TTL 604800
@ IN SOA example.com. root.example.com. (
21 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
;@ IN NS localhost.
;1.0.0 IN PTR localhost.
;Name Server Information
IN NS dns.example.com.
;Reverse lookup for Name Server
141 IN PTR dns
named-checkconf
Wenn ich nach der Konfiguration dieser Dateien Befehle ausführe named-checkzone
, erhalte ich eine korrekte Ausgabe ohne Fehler.
Ich habe den Dienst auch neu gestartet bind9
. Aber wenn ich versuche, den DNS mit dem Befehl zu überprüfen dig
, ist die Antwort nicht wie erwartet.
Der Befehl dig example.com
gibt Folgendes aus:
; <<>> DiG 9.10.3-P4-Debian <<>> example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53052
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;example.com. IN A
;; AUTHORITY SECTION:
example.com. 604800 IN SOA example.com. root.example.com. 21 604800 86400 2419200 604800
;; Query time: 0 msec
;; SERVER: 203.0.113.141#53(203.0.113.141)
;; WHEN: Sat Sep 01 09:05:29 EDT 2018
;; MSG SIZE rcvd: 81
Laut dem Tutorial, das ich befolgt habe, habe ich eine Zeile wie die folgende erwartet:
;; ANSWER SECTION:
www.example.com. 604800 IN A 203.0.113.141
Aber es existiert in dieser Ausgabe nicht.
Auch wenn ich die umgekehrte Suche mit überprüfe dig -x 203.0.113.141
, zeigt die Ausgabe nichts an, das mit meiner Domäne example.com in Zusammenhang steht:
; <<>> DiG 9.10.3-P4-Debian <<>> -x 203.0.113.141
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42358
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;141.113.0.203.in-addr.arpa. IN PTR
;; ANSWER SECTION:
141.113.0.203.in-addr.arpa. 86400 IN PTR 141.ip-203-0-113.net.
;; AUTHORITY SECTION:
0.203.in-addr.arpa. 66624 IN NS ns10.ovh.ca.
0.203.in-addr.arpa. 66624 IN NS dns10.ovh.ca.
;; Query time: 893 msec
;; SERVER: 54.39.21.141#53(54.39.21.141)
;; WHEN: Sat Sep 01 09:12:51 EDT 2018
;; MSG SIZE rcvd: 132
Und wieder hatte ich gemäß dem Tutorial einen anderen ANTWORTABSCHNITT erwartet, der meinen Domänennamen enthielt.
Glauben Sie also, dass es sich bei einer dieser Dateien um eine Fehlkonfiguration handeln könnte?
Antwort1
Okay, hier werden also zwei Fragen gestellt.
F1: Warum wird mir kein A-Eintrag für „www.example.com“ angezeigt?
Dafür gibt es zwei Gründe. Erstens haben Sie nicht nach dem A-Eintrag von 'www.example.com' gefragt; zweitens haben Sie keinen solchen A-Eintrag definiert. In Ihrer Forward-Zone-Datei sollten Sie die folgende Zeile hinzufügen:
www IN A 203.0.113.141
und fragen Sie diesen Datensatz dann mit ab dig www.example.com
.
Ich gehe davon aus, dass Sie möchten, dass sowohl „example.com“ als auch „www.example.com“ auf denselben Webserver verweisen. In diesem Fall müssen Sie auch einen A-Eintrag für den Apex (die Domäne) selbst hinzufügen. Dazu sollten Sie diese Zeile hinzufügen:
example.com. IN A 203.0.113.141
Sie haben bereits einen NS- und einen SOA-Eintrag für diesen Apex, aber ein A-Eintrag ist erforderlich, wenn Sie auch dorthin navigieren möchten.
F2: Warum wird mir für meinen PTR-Eintrag nicht die gewünschte Ausgabe angezeigt?
Ich muss diese Antwort bearbeiten. Die Antwort, die Sie erhalten haben, scheint mir richtig zu sein, auch wenn sie nicht Ihren Erwartungen entspricht.
Bearbeiten: Ich dachte an den „CNAME-Hack“, bei dem Ihr ISP einen CNAME erstellt, der auf eine Subdomäne verweist und Ihnen die Kontrolle über diese Subdomäne gibt. Da der ISP jedoch einen PTR-Eintrag bereitstellt, würde ich ihn zuerst kontaktieren und nach den Einzelheiten fragen, wie Sie den PTR-Eintrag für diese IP-Adresse einrichten sollen (falls Sie das überhaupt dürfen).