Ich habe einen Server mit NSD. Es gibt MAIN_IP und ADD_IP. Wenn ich versuche, die IP meiner Site vom Server abzurufen, erhalte ich die richtige Ausgabe
dig @localhost my_site.com
Aber wenn ich versuche, dies von meinem PC aus zu machen, habe ich
dig @my_ns_server.com my_site.com
;; reply from unexpected source: MAIN_IP#53, expected ADD_IP#53
(ADD_IP ist die IP von my_ns_server.com)
Was soll ich machen?
UPD: Meine Schnittstellen conf
auto eth2
allow-hotplug eth2
iface eth2 inet static
address xxx.xxx.xxx.234
netmask 255.255.255.252
network xxx.xxx.xxx.232
broadcast xxx.xxx.xxx.235
gateway xxx.xxx.xxx.233
dns-nameservers MY_ISP_IP
dns-search MY_ISP_DOMAIN
auto eth2:0
iface eth2:0 inet static
address xxx.xxx.xxx.124
netmask 255.255.255.0
xxx.xxx.xxx ist für alle IPs gleich
netstat -lntpu | grep: 53
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 1363/nsd
tcp6 0 0 :::53 :::* LISTEN 1363/nsd
udp 0 0 0.0.0.0:53 0.0.0.0:* 1363/nsd
udp6 0 0 :::53 :::* 1363/nsd
Antwort1
Wenn NSD auf allen Schnittstellen lauscht, überlässt es dem Betriebssystem die Auswahl der Quelladresse. Geben Sie immer explizit die Adressen an, auf denen NSD lauschen soll (z. B. alle IPs Ihrer NS-Einträge). In Ihrem Fall:
server:
ip-address: a.b.c.124
Dieser Threadauf der Mailingliste der NSD-Benutzer wird dasselbe Problem beschrieben (der IPv6-Teil ist irrelevant).
Antwort2
Dies kann eine Fehlkonfiguration des NSD oder eine falsche NAT-Regel auf Ihrer Box/Ihrem Router sein. NSD lauscht auf allen Schnittstellen? Führen Sie eine Portweiterleitung auf Ihrer NSD-Box durch, damit sie DNS-Anfragen auf einer sekundären IP-Adresse beantwortet?
Können Sie bitte Ihre Netstat-Ausgabe aus Ihrer NSD-Box einfügen?
netstat -lntpu | grep :53
Antwort3
Ich habe das gleiche Problem mit einem Setup und NSD 3.2.8. Es sieht so aus, als würde NSD nicht auf dem richtigen Socket antworten. Der Server, den ich verwendet habe, hat zwei IPs im selben Netzwerk. Er scheint immer von der Haupt-IP zu antworten, nie von der Alias-IP. Die Bind-Server (9.7.x) haben dieses Problem nicht.