none
Frage zu DNS Weiterleitungen RRS feed

  • Frage

  • Hallo Zusammen,

    ich habe mal eine Frage zu DNS.

    In unserer AD betreiben wir div. lokale DNS Server (W2K8R2 DNS). Über trusts sind wir mit anderen ADs verbunden. Unsere DNS Server sind so eingestellt, dass wenn eine Clientanfrage für einen host in einem der anderen ADs ankommt, werden diese an die entsprechenden DNS Server in der angefragten AD weitergeleitet.

    Am Client könnte ich ja nslookup nutzen.

    Wenn ich nslookup starte, dann fragt er den bevorzugten, lokalen DNS Server an. Erfrage ich dort einen host in einer anderen AD mittels FQDN , dann erhalte ich die korrekte Antwort.

    Könnte ich irgendwie herausfinden, an welchen DNS Server unser lokaler DNS Server die Anfrage weitergeleitet hat bzw. welcher "fremde" DNS die Antwort geliefert hat?

    Am Client kann ich das ja nicht sehen, das ja immer nur der lokale DNS die Antwort liefert.

    Danke!

    Viele Grüße, Anastasia

    Dienstag, 21. Januar 2014 10:10

Antworten

  • "Die Listenreihenfolge der IP-Adressen, die als Weiterleitungen auf einem DNS-Server definiert sind, bestimmt die Reihenfolge, in der die IP-Adressen verwendet werden. Nachdem der DNS-Server die Abfrage an die Weiterleitung mit der ersten IP-Adresse weitergeleitet hat, wartet er kurze Zeit auf eine Antwort von dieser Weiterleitung (entsprechend der Einstellung für das Weiterleitungszeitlimit des DNS-Servers), bevor er den Weiterleitungsversuch mit der nächsten IP-Adresse fortsetzt."

    Quelle: http://technet.microsoft.com/de-de/library/cc754931.aspx

    Viele Grüße, Philipp

    Mittwoch, 22. Januar 2014 10:53
  • Anhand der Protokolldateien aus dem Debug Logging kannst du erkennen, an welchen DNS Server die Anfrage weitergeleitet wurde.

    Dort steht z.B.:

    <Datum> - <Uhrzeit> - <...> - RCV (für Receive) - <DHCP Client IP-Adresse (Quelle der Anfrage)> - <...> - <Name aus der Anfrage>

    Wenn die Anfrage weitergeleitet wurde, folgt kurz darauf:

    <Datum> - <Uhrzeit> - <...> - SND (für Send) - <DHCP Server IP-Adresse (nächstes Ziel der Weiterleitung)> - <...> - <Name aus der Anfrage>

    Dieser DNS Server ist aber - wie schon beschrieben - nicht unbedingt der Server, der letztendlich den Namen aufgelöst hat, da dort wiederum Weiterleitungen eingetragen sein könnten.

    Viele Grüße, Philipp

    Mittwoch, 22. Januar 2014 12:27

Alle Antworten

  • Hallo Anastasia,

    mit "nslookup -debug <server>" siehst du weitere Informationen, u.a. den Authority Record.

    Beispiel "nslookup -debug microsoft.com"

    [...]

        AUTHORITY RECORDS:
        ->  microsoft.com
            ttl = 3261 (54 mins 21 secs)
            primary name server = ns1.msft.net

    [...]

    Damit erhältst du den verantwortlichen Name Server der angefragten Domain.

    Viele Grüße, Philipp

    • Als Antwort vorgeschlagen Thomas Proehl Dienstag, 21. Januar 2014 15:25
    Dienstag, 21. Januar 2014 13:44
  • Hallo Philipp,

    erstmal vielen Dank für die Antwort.

    Leider kann ich auch mit der debug Funktion nicht sehen, welcher DNS Server die Antwort unserem lokalen DNS Server schlußendlich geliefert hat.

    Ich sehe nur, dass die richtige IP geliefert wurde, aber von wem?

    Vielleicht sehe ich sowas nur an unseren lokalen DNS Server selbst?

    Viele Grüße, Anastasia

    Mittwoch, 22. Januar 2014 08:42
  • Hallo Anastasia,

    welcher DNS Server steht denn in der Ausgabe unter dem letzten Abschnitt hinter "primary name server =". Es sollte sich hierbei um den primären DNS Server der angefragten Zone handeln.

    Du kannst die Abfrage auf den SOA eingrenzen mit folgendem Befehl: nslookup -querytype=soa <server>

    An eurem lokalen DNS Server kannst du dir die Weiterleitungen anschauen. Der dort hinterlegte DNS Server ist aber nicht unbedingt der Server, der letztendlich den Namen aufgelöst hat, da dort wiederum Weiterleitungen eingetragen sein könnten.

    Viele Grüße, Philipp

    Mittwoch, 22. Januar 2014 09:04
  • Dein lokaler DNS Server bekommt gar keine Antwort, die bekommt der Client, dein DNS Server leitet nur die Anfrage vom Client weiter, wenn er ein Ziel hat, danach ist es ihm egal.

    Das Beispiel von oben klappt doch ?! - ns1.msft.net antwortet auf die Frage:


    freundliche Grüße Thomas

    Mittwoch, 22. Januar 2014 09:09
  • Hallo Zusammen,

    leider steht bei mir kein primary name server Eintrag im letzten Abschnitt bei nslookup -debug microsoft.com

    Got answer:
        HEADER:
            opcode = QUERY, id = 16, rcode = NOERROR
            header flags:  response, want recursion, recursion avail.
            questions = 1,  answers = 2,  authority records = 0,  additional = 0

        QUESTIONS:
            microsoft.com, type = A, class = IN
        ANSWERS:
        ->  microsoft.com
            internet address = 64.4.11.37
            ttl = 3339 (55 mins 39 secs)
        ->  microsoft.com
            internet address = 65.55.58.201
            ttl = 3339 (55 mins 39 secs)

    ------------
    Non-authoritative answer:
    ------------
    Got answer:
        HEADER:
            opcode = QUERY, id = 17, rcode = NOERROR
            header flags:  response, want recursion, recursion avail.
            questions = 1,  answers = 0,  authority records = 0,  additional = 0

        QUESTIONS:
            microsoft.com, type = AAAA, class = IN

    ------------
    Name:    microsoft.com
    Addresses:  64.4.11.37
              65.55.58.201

    Die einzigen Einträge mit primary name server= sind unser lokalen DNS Server.

    Also schließe ich daraus, dass unser lokaler DNS Server die Antwort liefert. Doch wo er die Auflösung und IP Daten her hat, bleibt unbekannt.

    Für Internetadressen ist das auch nicht interessant, mich interessiert nur für interne FQDN, welcher DNS Server angefragt wurde und die Antwort lieferte.

    Viele Grüße, Anastasia

    Mittwoch, 22. Januar 2014 09:48
  • Hallo Anastasia,

    wie sieht die Ausgabe bei folgendem Aufruf aus?

    nslookup -querytype=ns microsoft.com

    Viele Grüße, Philipp

    Mittwoch, 22. Januar 2014 09:55
  • >nslookup -querytype=ns microsoft.com
    Server:  <lokaler DNS FQDN>
    Address:  <IP vom lokalen DNS>

    Non-authoritative answer:
    microsoft.com   nameserver = ns1.msft.net
    microsoft.com   nameserver = ns5.msft.net
    microsoft.com   nameserver = ns3.msft.net
    microsoft.com   nameserver = ns4.msft.net
    microsoft.com   nameserver = ns2.msft.net

    ns3.msft.net    internet address = 213.199.180.53
    ns2.msft.net    internet address = 64.4.59.173
    ns4.msft.net    internet address = 207.46.75.254
    ns1.msft.net    internet address = 65.55.37.62
    ns5.msft.net    internet address = 65.55.226.140

    Der lokale DNS hat also die Antwort geliefert, doch wen hat er dafür angefragt?

    Viele Grüße, Anastasia

    Mittwoch, 22. Januar 2014 10:03
  • Einen dieser Server (die alle über identische Informationen verfügen):

    ns3.msft.net    internet address = 213.199.180.53
    ns2.msft.net    internet address = 64.4.59.173
    ns4.msft.net    internet address = 207.46.75.254
    ns1.msft.net    internet address = 65.55.37.62
    ns5.msft.net    internet address = 65.55.226.140

    Viele Grüße, Philipp

    Mittwoch, 22. Januar 2014 10:07
  • Aber woher weiss denn unser DNS wie die Name Server von microsoft.com heißen.

    Der muss doch dafür andere DNS anfragen oder habe ich da grundsätzlich was nicht verstanden.

    Und für solche Anfragen, die unser DNS nicht mehr auflösen kann, kann man doch Weiterleitungen einrichten.

    Also müßte unser DNS Server für eine Name Server Anfrage, die außerhalb seiner Zonen liegt, die Anfrage an die anderen DNS Server, die als WL eingetragen sind, weiterleiten.

    Und genau für diesen Punkt interessiere ich mich.

    Wo könnte ich also nachschauen, an welchen DNS diese Anfrage weitergeleitet wurde oder ist das immer der erste Server, den ich im DNS Server als Weiterleitung angebe? Bei uns sind z.B. 6 verschiedene DNS Server für externe Auflösungen angegeben. Geht er die automatisch von oben nach untern durch? Solange, bis einer der 6 die Frage beantwortet? Kann ich das evt. auch debuggen?

    Viele Grüße, Anastasia

    Mittwoch, 22. Januar 2014 10:37
  • "Die Listenreihenfolge der IP-Adressen, die als Weiterleitungen auf einem DNS-Server definiert sind, bestimmt die Reihenfolge, in der die IP-Adressen verwendet werden. Nachdem der DNS-Server die Abfrage an die Weiterleitung mit der ersten IP-Adresse weitergeleitet hat, wartet er kurze Zeit auf eine Antwort von dieser Weiterleitung (entsprechend der Einstellung für das Weiterleitungszeitlimit des DNS-Servers), bevor er den Weiterleitungsversuch mit der nächsten IP-Adresse fortsetzt."

    Quelle: http://technet.microsoft.com/de-de/library/cc754931.aspx

    Viele Grüße, Philipp

    Mittwoch, 22. Januar 2014 10:53
  • Aha, sehr gut vielen Dank für die Info, Philipp.

    Das ist ja schonmal was, wenn ich diese Anfrage auch loggen könnte, dann wäre das, was ich gesucht habe. Ist das evt. mit der Debug logging Funktion am DNS Server zu erreichen?

    Hat damit schon jemand Erfahrungen gemacht?

    Viele Grüße, Anastasia

    Mittwoch, 22. Januar 2014 11:37
  • Anhand der Protokolldateien aus dem Debug Logging kannst du erkennen, an welchen DNS Server die Anfrage weitergeleitet wurde.

    Dort steht z.B.:

    <Datum> - <Uhrzeit> - <...> - RCV (für Receive) - <DHCP Client IP-Adresse (Quelle der Anfrage)> - <...> - <Name aus der Anfrage>

    Wenn die Anfrage weitergeleitet wurde, folgt kurz darauf:

    <Datum> - <Uhrzeit> - <...> - SND (für Send) - <DHCP Server IP-Adresse (nächstes Ziel der Weiterleitung)> - <...> - <Name aus der Anfrage>

    Dieser DNS Server ist aber - wie schon beschrieben - nicht unbedingt der Server, der letztendlich den Namen aufgelöst hat, da dort wiederum Weiterleitungen eingetragen sein könnten.

    Viele Grüße, Philipp

    Mittwoch, 22. Januar 2014 12:27
  • Hallo Philipp,

    das hört sich doch gut an. Damit sind alle Fragen für mich beantwortet.

    Ich danke Dir für Deine Infos.

    Viele Grüße, Anastasia

    Mittwoch, 22. Januar 2014 12:48