Dns на системата за имена на домейни

С нарастването на интернет се увеличаваха и файловете на хостове и изграждането на мащабируемо решение за разрешаване на имена стана необходимост.

DNS използва текстови файлове в почти същия формат като файла хостове и администраторът също подготвя тези файлове ръчно. DNS обаче разчита на йерархия от домейни и всеки DNS сървър съхранява само подмножество от мрежовите имена, а не всички имена, както е в случая с хостовите файлове. Тъй като броят на възлите в мрежата нараства, проблемът с мащабирането се решава чрез създаване на нови домейни и поддомейни с имена и добавяне на нови сървъри към DNS услугата.

DNS клиентът се свързва с коренния DNS сървър с напълно квалифицирано име на домейн;

Тази комуникационна схема се нарича нерекурсивна или итеративна, когато самият клиент итеративно изпълнява последователност от заявки към различни сървъри за имена. Тъй като тази схема зарежда клиента с доста сложна работа, тя рядко се използва.

Вторият вариант реализира рекурсивна процедура:

DNS клиентът отправя запитване към локалния DNS сървър, т.е. сървъра, който обслужва поддомейна, към който принадлежи името на клиента;

ако локалният DNS сървър знае отговора, той веднага го връща на клиента; това може да съответства на случая, когато исканото име е в същия поддомейн като името на клиента, или може да съответства на случая, когато сървърът вече е научил това съвпадение за друг клиент и го е съхранил в кеша си;

ако локалният сървър не знае отговора, той изпълнява итеративни заявки към коренния сървър и т.н. по същия начин, както клиентът направи в първата опция; след като получи отговора, той го предава на клиента, който през цялото това време само го чакаше от локалния си DNS сървър.