DNS (engl. Domain Name System) je protokol koji pretvara imena računala u IP adrese i obratno.
Ljudima je pomalo teško pamtiti IP adrese, odnosno ljudskom je mozgu lakše zapamtiti adresu tipa: www.skola.hr, nego IP adresu: 85.94.77.116. Da bi se olakšao pristup računalima, trebalo je izmisliti protokol koji će ljudima lako pamtljiva imena (www.skola.hr) pretvarati u IP adrese koje upotrebljava TCP/IP protokol. DNS je rezultat cijele te priče.
U pitanju je distribuirana baza podataka koja informacije čuva u hijerarhijskom ustroju. Kad kažemo da je u pitanju distribuirana baza podataka mislimo na to da je DNS baza zapravo podijeljena preko više servera u nekakve logičke cjeline i ne postoji server koji na sebi ima popis svih host-ova, već samo dio tog popisa. Kada kažemo da DNS čuva podatke u hijerarhijskom ustroju, onda mislimo na to da postoji hijerarhija po kojoj su ti podaci složeni i distribuirani, što olakšava i ubrzava pronalaženje IP adrese za zadano ime. Hijerarhija DNS-a počinje korijenskom domenom.
Korijenska (engl. root) domena označena je točkom (“.”). Ispod korijenske domene nalaze se vršne domene.
Vršne (engl. top level) domene su npr. .com, .net, .org, .hr ... Ispod vršnih domena nalaze se drugostupanjske domene koje se dodjeljuju tvrtkama ili pojedincima (npr. algebra, microsoft, ibm...).
Na kraju, ispod svake drugostupanjske domene može biti neograničen broj pod-domena.