Ich habe einen BIND-Ubuntu-Server als privaten DNS-Server für com
die Zone und zwei Hosts (Webserver). Die drei sind virtuelle Hosts, die eine virtuelle Box verwenden und über eine virtuelle Hostkarte miteinander verbunden sind.
Ich habe diese Konfigurationsdatei im DNS-Server für die Vorwärtsauflösung:
$TTL 604800
@ IN SOA dns1.com. admin.com. (
19 ; Serial
604820 ; Refresh
86600 ; Retry
2419600 ; Expire
604600 ) ; Negative Cache TTL
; name servers - NS records
IN NS dns1.com.
; name servers - A records
dns1.com. IN A 192.168.56.3
; 192.168.56.0/24 - A records
@ IN NS dns1.com.
host1. IN A 192.168.56.7
host2. IN A 192.168.56.8
Ich versuche, über den Domänennamen eine Verbindung zu beiden Hosts herzustellen. Der erste Host wird ordnungsgemäß geöffnet. Der zweite Host kann nie geöffnet werden.
Beide sind pingbar. Hier ist das zweite Host-Ping-Ergebnis von meinem Rechner: C:\Users\e>ping 192.168.56.8
Pinging 192.168.56.8 with 32 bytes of data:
Reply from 192.168.56.8: bytes=32 time<1ms TTL=64
Reply from 192.168.56.8: bytes=32 time<1ms TTL=64
Reply from 192.168.56.8: bytes=32 time<1ms TTL=64
Ich kann host2.com auflösen, wenn ich die lokale host
Datei auf meinem Windows-Computer verwende, indem ich diesen Eintrag hinzufüge:
192.168.56.8 host2.com
Ich kann nicht herausfinden, warum mein DNS-Server nicht aufgelöst werden kann host2
, aber auflösen kann host1
?
Hier ist die named.conf.local
Datei:
zone ".com" {
type master;
file "/etc/bind/forward.host1.com";
};
zone "56.168.192.in-addr.arpa"{
type master;
file "/etc/bind/reverse.host1.com";
};
Ich glaube nicht, dass die Dateinamen forward.host1.com
reverse.host1.com
irgendeinen Einfluss auf die Auflösung haben? Oder etwa doch?
BEARBEITEN: So überprüfen Sie die Konfigurationen:
/etc/bind$ sudo named-checkzone com forward.host1.com
forward.host1.com:20: ignoring out-of-zone data (host1)
forward.host1.com:21: ignoring out-of-zone data (host2)
zone com/IN: loaded serial 19
OK
Kann mir jemand erklären, warum ich Host2 nicht auflösen kann?
EDIT: Nach einer vorgeschlagenen Antwort wurde die Datei wie folgt aktualisiert, aber ohne Hoffnung. Ich kann jetzt weder Host1 noch Host2 erreichen, obwohl sie aktiv sind und ich sie per IP erreichen kann:
$TTL 604800
@ IN SOA dns1.com. admin.com. (
24 ; Serial
604820 ; Refresh
86600 ; Retry
2419600 ; Expire
604600 ) ; Negative Cache TTL
; name servers - NS records
IN NS dns1.com.
; name servers - A records
dns1.com IN A 192.168.56.3
; 192.168.56.0/24 - A records
@ IN NS dns1.com.
host1 IN A 192.168.56.7
host2 IN A 192.168.56.8
Antwort1
Es klingt, als hätten Sie einige Schwierigkeiten, deshalb sind hier zwei (hoffentlich) funktionierende Beispiele für Sie. Beachten Sie, dass die erste Option (die .com
Zone) wahrscheinlich die Auflösung normaler .com
Domänen (z. B. google.com
) verhindert. Die zweite Option (die dns1.com
Zone) hat diesen Nachteil nicht.
Beispielzonendateien.com
ex. /etc/bind/named.conf.local
; "db.com.tld" is a random name - use whatever you like.
; The same goes for "db.rev.192".
;
; Likewise, you can adjust your "allow-transfer" settings,
; etc. as needed.
zone "com." IN {
type master;
file "/etc/bind/zones/db.com.tld";
allow-transfer { none; };
};
zone "56.168.192.in-addr.arpa" IN {
type master;
file "/etc/bind/zones/db.rev.192";
allow-transfer { none; };
};
ex. /etc/bind/zones/db.com.tld
; BIND data file for TLD ".com"
;
; This will likely break real ".com" websites (i.e. anything not listed here).
$TTL 3600
@ IN SOA com. admin.com. (
2018040501 ; Serial
604800 ; Refresh period
86400 ; Retry interval
2419200 ; Expire time (28 days... later)
604800 ) ; Negative Cache TTL (1 week)
; Name Servers - NS records
@ IN NS ns1.com. ; This is required
@ IN NS ns2.com. ; You should have two name servers
; Name Servers - A records
ns1 IN A 192.168.56.3 ; This is required
ns2 IN A 192.168.56.3 ; You should have two name servers
; Our domains/sub-domains
dns1 IN A 192.168.56.3 ; dns1.com
host1.dns1 IN A 192.168.56.7 ; host1.dns1.com
host2.dns1 IN A 192.168.56.8 ; host2.dns1.com
Beachten Sie, dass die Verwendung eines Punkts wie diesem in Ordnung ist, obwohl er in diesem Fall wohl überflüssig ist:
;ok.period.com. IN A 192.168.56.3 ; ok.period.com -> FQDN
Und das sollten Sie vermeiden:
;no.period. IN A 192.168.56.3 ; Don't use periods for sub-domains
;no.period.com IN A 192.168.56.3 ; While this works, this is actually accessed as no.period.com.com!
ex. /etc/bind/zones/db.rev.192
; BIND reverse data file.
; The domain, etc. used should be a listed 'zone' in named.conf.
$TTL 86400
@ IN SOA com. admin.com. (
2018040501 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ) ; Minimum
; In this case, the number just before "PTR" is the last octet
; of the IP address for the device to map (e.g. 192.168.56.[3])
; Name Servers
@ IN NS ns1.com.
@ IN NS ns2.com.
; Reverse PTR Records
3 IN PTR dns1.com.
7 IN PTR host1.dns1.com.
8 IN PTR host2.dns1.com.
Beachten Sie, dass die obige Konfiguration Ihre Optionen hinsichtlich des Zugriffs Ihrer Maschinen auf .com
andere Domänen als die von Ihnen erstellten wahrscheinlich einschränkt (d. h. sie werden wahrscheinlich nicht darauf zugreifen können). Wenn Sie möchten, dass sie auf fremde .com
Domänen zugreifen, können Sie den eingeschränkteren Ansatz unten ausprobieren.
Beispielzonendateiendns1.com
ex. /etc/bind/named.conf.local
; "db.dns1.com" is a random name - use whatever you like.
;
; Likewise, you can adjust your "allow-transfer" settings,
; etc. as needed.
zone "dns1.com" IN {
type master;
file "/etc/bind/zones/db.dns1.com";
allow-transfer { none; };
};
Sie können denselben named.conf.local
umgekehrten Zoneneintrag wie oben verwenden.
ex. /etc/bind/zones/db.dns1.com
; BIND data for http://dns1.com
$TTL 3600
@ IN SOA ns1.dns1.com. admin.dns1.com. (
2018040501 ; Serial
604820 ; Refresh
86600 ; Retry
2419600 ; Expire
604600 ) ; Negative Cache TTL
; Name Servers - NS records
@ IN NS ns1.dns1.com. ; This is required
@ IN NS ns2.dns1.com. ; You should have two name servers
; Name Servers - A records
ns1 IN A 192.168.56.3 ; This is required
ns2 IN A 192.168.56.3 ; You should have two name servers
; Our domains/sub-domains
dns1.com. IN A 192.168.56.3 ; dns1.com
host1 IN A 192.168.56.7 ; host1.dns1.com
host2 IN A 192.168.56.8 ; host2.dns1.com
ex. /etc/bind/zones/db.rev.192
; BIND reverse data file.
; The domain, etc. used should be a listed 'zone' in named.conf.
$TTL 86400
@ IN SOA dns1.com. admin.dns1.com. (
2018040501 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ) ; Minimum
; In this case, the number just before "PTR" is the last octet
; of the IP address for the device to map (e.g. 192.168.56.[3])
; Name Servers
@ IN NS ns1.dns1.com.
@ IN NS ns2.dns1.com.
; Reverse PTR Records
3 IN PTR dns1.com.
7 IN PTR host1.dns1.com.
8 IN PTR host2.dns1.com.
Antwort2
Ihre Zonendatei ist falsch – in den Zeilen 20 und 21, wie vorgeschlagen. Insbesondere sollte sie nach Host1 und Host2 keinen „.“ enthalten.
Der . bedeutet, dass dies absolut und nicht relativ zur Zone ist. Daher wird der Domänenname host1 nicht erkannt und es gibt keinen Eintrag für host1.com.