Rekursion

Für einen DNS Server bedeutet Rekursion, dass er Iterative Abfragen an andere DNS Server sendet. Wenn die angefragten DNS Server keine Antwort liefern können, verweisen sie ihn an andere DNS Server.

Eine Rekursion findet z.B. statt wenn ein DNS Server die Root-Server des Internet`s abfragt.

Das ist nicht zu verwechseln mit einer rekursiven Abfrage eines Clients (was eben viele noch machen). Das hat damit zwar zu tun, ist aber nicht das gleiche. Wenn man einem Windows DNS-Server in den Servereigenschaften die Rekursion verbietet, kann er keine iterativen Abfragen mehr senden. Ebenfalls kann man bei der Weiterleitung unten "Keine Rekursion ... " anklicken. Das bedeutet wiederum, dass er keine iterativen Abfragen mehr durchführen kann.

Die Rekursive Abfrage ist für den Resolver die einfachste Art der Namensauflösung. Er übergibt diese Aufgabe komplett an den angesprochenen DNS-Server. Wenn dieser den Domain-Namen nicht auflösen kann, fragt er selber bei weiteren DNS-Servern nach, bis der Domain-Name aufgelöst ist und die Antwort zurückgeliefert werden kann. Der Resolver übergibt die Antwort dann an das Anwendungsprogramm.

Iteration
Die Iterative Abfrage an den angesprochenen DNS-Server liefert nur die Adresse des nächsten abzufragenden DNS-Servers zurück. Der Resolver muss sich dann selber um die weiteren Anfragen kümmern, bis der Domain-Name vollständig aufgelöst ist.


Deaktivieren des Rekursionsvorgangs

In der Standardeinstellung ist der Rekursionsvorgang für den DNS-Dienst aktiviert, und i. d. R. fordern die Clients den Server beim Versenden einer Abfrage auf, für die Namensauflösung Rekursion zu verwenden. Bei deaktiviertem Rekursionsvorgang verwendet der DNS-Dienst, unabhängig von der Clientanforderung, die Verweisfunktion.

Bei DNS-Servern sind zwei Arten von Anworten auf Namensabfragen außerhalb ihrer autorisierenden Zonen möglich:

  • Server können mit Verweisen antworten. Diese stellen eine unmittelbare Reaktion auf den anfordernden Client dar und enthalten Listen mit Ressourceneinträgen für andere ihm bekannte DNS-Server, die u. U. näher bzw. besser in der Lage sind, den abgefragten Namen aufzulösen.

  • Server können mit Hilfe der Rekursion stellvertretend für den anfordernden Client Abfragen an andere Server senden, um eine vollständige Namensauflösung zu erzielen. Rekursive Lookups werden so lange durchgeführt, bis der Server eine autorisierende Antwort auf den abgefragten Namen erhält. Er sendet diese Antwort dann als Reaktion auf die ursprüngliche Clientabfrage.

Der Rekursionsvorgang wird zumeist dann auf einem DNS-Server deaktiviert, wenn DNS-Clients auf eine Namensauflösung beschränkt werden sollen, die auf einem bestimmten Server autorisierend verwaltet wird. Dies ist z. B. der Fall, wenn ein DNS-Server lediglich über DNS-Namensdaten eines internen Netzwerkes verfügt oder wenn er keine externen DNS-Namen (wie Internet-DNS-Namen) auflösen kann und Clients sich für die Auflösung dieser Namen an einen anderen DNS-Server wenden sollen.