A DNS a domain name system (tartománynévrendszer) rövidítése. Ez egy hierarchikus elnevezési rendszer az interneten, vagy egy privát hálózaton jelenlevő számítógépek, szolgáltatások, vagy bármilyen más erőforrások számára. A DNS a hálózat tagjainak domain neveihez különböző információkat társít. Ezek közül az információk közül talán a legfontosabb a domain nevekhez tartozó IP-címek, amelyekre feltétlenül szükség van, ha meg akarjuk találni a hálózaton található számítógépeket, szolgáltatásokat. Az IP-cím könnyen megjegyezhető, alfanumerikussá fordítása, a DNS-t az internet egyik legfontosabb összetevőjévé teszi. A DNS a telefonkönyv mintájára úgy kapcsolja össze az IP-címeket a könnyen megjegyezhető hostnevekkel, mint a telefonkönyv a telefonszámokat a személyekkel.

Az IETF (az internet szabványait kialakító szervezet) által létrehozott példadomaint, a www.example.com-ot a DNS a 192.0.43.10 IPV4-es és a 2001:500:88:200::10-os IPV6-os címre fordítja le. Az IPV4 az IP-címek 4. generációja, ez az amit általánosan használnak ma is, az IPV6 pedig az IPV4-et fenyegető címkimerülés miatt létrehozott alternatíva. A DNS könnyedén és gyorsan frissíthető, így a különböző szolgáltatások, számítógépek helye a hálózatban gyorsan változhat anélkül, hogy a felhasználókra bármilyen hatással lenne.

A kiszolgálók működése
A kiszolgálók működése

A DNS rendszer egy kliensszerver alapú adatbázis szerint működik. Ennek az adatbázisnak az egyes csomópontjai a névkiszolgálók. Minden domainhez tartozik legalább egy DNS szerver, amely adatokat közöl az adott domainről, illetve a hozzá rendelt névkiszolgálókról. A rendszer legmagasabb fokán a root name szerverek (gyökér-névkiszolgálók) állnak, ezek a szerverek fordítják le a TLD-ket (.hu .com, stb.) A névkiszolgálók lehetnek master vagy slave szerverek. A master szerverek tárolják az összes eredeti adatot a domainekről. A slave szerverek egy automatikusan frissítő mechanizmus segítségével mindig a master szerverek pontos másolatait tartalmazzák. Amikor egy új domaint bejegyeznek, hozzá kell rendelni egy elsődleges szervert, amely legtöbbször master szerver, és legalább egy másodlagos szervert is, ami már slave szerver is lehet. Erre azért van szükség, mert így a domain akkor is elérhető marad, ha valamelyik szerver nem működik. Amikor egy weblapot szeretnénk megnyitni, a névkiszolgálók lekérdezések folyamatával szűkítik le a lehetséges domaineket, míg végül rátalálnak a szükségesre.

Egy példa a kiszolgálók működésére, a www.pelda.hu oldal keresése esetén:

  • 123.45.6.7 A gyökér-névkiszolgáló megtalálja a TLD-t, és tovább küldi egy következő névkiszolgálónak a lehetséges IP-címet.
  • 123.45.678.9 A névkiszolgáló az SLD alapján tovább szűkíti a kört és ha kell továbbküldi egy következő kiszolgálónak
  • 123.456.789.123 A névkiszolgáló megtalálja a szükséges IP-címet és így a böngésző meg tudja nekünk nyitni a weblapot
  • A felesleges újrakeresések csökkentése érdekében az internetszolgáltatók gyorsítótárakat alkalmaznak, amelyekben az ismert domainnév-IP-cím párosokat mentik.