ISP-DNS-Server anstelle des lokalen DNS verwendet

ISP-DNS-Server anstelle des lokalen DNS verwendet

Das Thema

Im internen Netzwerk meiner Firma gibt es einen Entwicklungsserver namensdevserver.mycompany.com

Normalerweise kann ich problemlos eine Verbindung zu diesem Server herstellen, aber manchmal (kommt mir zufällig vor) kann Ubuntu die Adresse nicht auflösen.

Weitere Informationen und Beobachtungen

Wenn ich es nmcli dev list iface eth0in einem Terminal ausführe, sehe ich, dass zwei DNS-Server konfiguriert sind:

IP4.DNS[1]:                             192.168.50.103
IP4.DNS[2]:                             128.255.1.3

Der zweite DNS-Server ist der Server meines ISP.

Auf meiner Windows-Partition, die für die Verwendung derselben beiden DNS-Server konfiguriert ist, tritt dieses Problem nie auf.

Wenn das Problem bei mir auftritt:

  • nslookup devserver.mycompany.com schlägt fehl
  • nslookup devserver.mycompany.com 128.255.1.3 schlägt fehldie ganze Zeit (keine Überraschung, Devserver ist kein öffentlicher Server)
  • nslookup devserver.mycompany.com 192.168.50.103 Werke

Hier ist die tatsächliche Ausgabe von nslookup:

Ubuntu-14:~$ nslookup devserver.mycompany.com
Server:     127.0.1.1
Address:    127.0.1.1#53

** server can't find devserver.mycompany.com: NXDOMAIN

Fragen

  • Aus der obigen Ausgabe geht hervor, dass Ubuntu versucht, einen lokalen DNS-Server zu verwenden. Stimmt das? Wird eine fehlgeschlagene Suche auf meinem lokalen Computer zwischengespeichert?
    • Wenn es sich um einen Cache handelt, wie kann ich den Cache leeren?
  • Benutzt Ubuntu manchmal diesen zweiten DNS-Server? Warum? Ist das ein Lastenausgleich? Ist der lokale Server langsamer?
  • Wie kann ich das beheben? Ich möchte den zweiten DNS-Server nicht entfernen, falls der primäre ausfällt.
  • Und schließlich: Warum tritt dieses Problem unter Windows nicht auf?

Ubuntu-Versionsinformationen

Ubuntu 14.04 LTS ohne ausstehende Updates.

Die gesamte Netzwerkeinrichtung erfolgte mehr oder weniger automatisch. Mit DHCP

Antwort1

Aus der obigen Ausgabe geht hervor, dass Ubuntu versucht, einen lokalen DNS-Server zu verwenden. Stimmt das? Wird eine fehlgeschlagene Suche auf meinem lokalen Computer zwischengespeichert?

Ja, Ubuntu verwendet alles, was mit dem DHCP-Lease bereitgestellt wurde, genauer gesagt dnsmasqein Plug-In, das sich darum kümmert network-manager.

Benutzt Ubuntu manchmal diesen zweiten DNS-Server? Warum? Ist das ein Lastenausgleich? Ist der lokale Server langsamer?

Wenn die Auflösung des ersten DNS fehlschlägt, dnsmasqsollte die Abfrage an den sekundären DNS umgeleitet werden. Zumindest ist das die Idee.

Falls Sie Ihren eigenen DNS-Server verwenden möchten Persönlich verwende ich supersede domain-name-server xxx.xx.xxx.xxxin immer /etc/dhcp/dhclient.conf, um meinem Ubuntu-System mitzuteilen, dass es alle DNS, die es per DHCP-Lease erhält, durch meinen eigenen Server ersetzen soll. Hier ist der Auszug aus dieser Datei:

30)serg@ubuntu[/home/xieerqi]
>_ cat /etc/dhcp/dhclient.conf                                                 
# Configuration file for /sbin/dhclient, which is included in Debian's
#   dhcp3-client package.
#
# This is a sample configuration file for dhclient. See dhclient.conf's
#   man page for more information about the syntax of this file
#   and a more comprehensive list of the parameters understood by
#   dhclient.
#
# Normally, if the DHCP server provides reasonable information and does
#   not leave anything out (like the domain name, for example), then
#   few changes must be made to this file, if any.
#

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;

#send host-name "andare.fugue.com";
send host-name = gethostname();
#send dhcp-client-identifier 1:0:a0:24:ab:fb:9c;
#send dhcp-lease-time 3600;
#supersede domain-name "fugue.com home.vix.com";
supersede domain-name-servers 208.67.220.220;
#prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-name-servers, domain-search, host-name,
    dhcp6.name-servers, dhcp6.domain-search,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes, ntp-servers,
    dhcp6.fqdn, dhcp6.sntp-servers;

Nach der Einrichtung und erneuten Verbindung bzw. dem Neustart network-managersehe ich Folgendes:

31)serg@ubuntu[/home/xieerqi]
>_ nmcli dev list | grep -i dns                                                
IP4.DNS[1]:                             208.67.220.220

Nslookup meldet dies Server: 127.0.1.1und Address: 127.0.1.1#53 da es der Netzwerk-Manager ist, dsnmasqder auf dieser Adresse lauscht, verwendet er das, was von DHCP bereitgestellt wurde (in diesem Fall den ersetzten DNS).

verwandte Informationen