Video: Nätverksteknik - Nätverkstopologier 2024
När en DNS-klient behöver lösa ett DNS-namn till en IP-adress, använder den en biblioteksrutin - en resolver - för att hantera frågan. Upplösaren tar hand om att skicka frågemeddelandet via nätverket till DNS-servern, mottar och tolkar svaret och informerar klienten om resultaten av frågan.
En DNS-klient kan göra två grundläggande typer av frågor: rekursiv och iterativ. Följande lista beskriver skillnaden mellan dessa två frågetyper. (Följande diskussion förutsätter att klienten frågar servern för IP-adressen för ett värdnamn, vilket är den vanligaste typen av DNS-fråga. Du hittar reda på andra typer av frågor senare, de kan också vara rekursiva eller iterativ.)
-
Rekursiva frågor: När en klient utfärdar en rekursiv DNS-fråga, måste servern svara med antingen IP-adress för det önskade värdnamnet eller ett felmeddelande som indikerar att värdnamnet existerar inte. Om servern inte har informationen frågar den en annan DNS-server för IP-adressen.
När den första servern slutligen får IP-adressen skickas den tillbaka till klienten. Om servern bestämmer att informationen inte finns, returnerar den ett felmeddelande.
-
Iterativa frågor: När en server får en iterativ fråga returnerar den IP-adressen till det begärda värdnamnet om det känner till adressen. Om servern inte känner till adressen returnerar den en hänvisning, som helt enkelt är adressen till en DNS-server som borde känna till. Klienten kan sedan utfärda en iterativ fråga till servern som den hänvisades till.
Normalt utfärdar DNS-klienter rekursiva frågor till DNS-servrar. Om servern känner till svaret på frågan svarar det direkt till klienten. Om inte, utfärdar servern en iterativ fråga till en DNS-server som den anser borde känna till svaret.
Om den ursprungliga servern får ett svar från den andra servern returnerar det svaret till klienten. Om den ursprungliga servern får en hänvisning till en tredje server, utfärdar den ursprungliga servern en iterativ fråga till den tredje servern. Den ursprungliga servern fortsätter att utfärda iterativa frågor tills den antingen får svaret eller ett fel uppstår. Den returnerar sedan svaret eller felet till klienten.