Какво е DNS и как работи? Подробно ръководство

October 19, 202614 мин. четене
Какво е DNS и как работи? Подробно ръководство
.cr-lock{transform-origin:center;animation:crLock 2.4s ease-in-out infinite} @keyframes crLock{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}} .cr-art pre{background:#140f24;color:#e9e4ff;padding:16px;border-radius:12px;overflow-x:auto;font-size:14px;line-height:1.5}

Накратко: DNS (Domain Name System) е телефонният указател на интернет. Той превежда имената на домейни, които хората помнят, например firma.bg, в IP адреси, с които работят компютрите, например 203.0.113.10. Когато въведете адрес в браузъра, DNS за части от секундата открива към кой сървър да ви изпрати. Освен за сайта, DNS записите казват къде да пристига пощата ви, как да се проверява самоличността на вашите имейли и кои услуги принадлежат на домейна. Ако DNS е настроен грешно, сайтът не се отваря, а имейлите не пристигат, дори когато хостингът работи безупречно.

Какво е DNS с прости думи

DNS е системата, която свързва името на домейна с IP адреса на сървъра, на който се намира сайтът. Компютрите в интернет се намират един друг по числови адреси. Хората обаче не помнят числа, а имена. DNS стои по средата и превежда едното в другото, автоматично и невидимо за потребителя.

Най-лесно е да си представите контактите в телефона си. Не помните номера на приятелите си, а търсите по име и телефонът набира номера вместо вас. DNS прави същото за целия интернет: вие пишете firma.bg, а системата открива, че сайтът е на адрес 203.0.113.10, и браузърът се свързва с този сървър.

Домейнът е името на табелата, хостингът е сградата, а DNS е картата, която казва на кой адрес се намира сградата.

Ако още не сте сигурни как се свързват тези три понятия, прочетете първо Домейн, хостинг и сайт: каква е разликата?.

Браузърът пита DNS резолвъра за firma.bg, резолвърът пита коренен, TLD и авторитетен сървър и връща IP адреса firma.bg браузър DNS резолвър 1. коренен сървър „.“ 2. TLD сървър „.bg“ 3. авторитетен сървър A → 203.0.113.10

Защо DNS е толкова важен

Почти всяко действие в интернет започва с DNS заявка: отваряне на сайт, изпращане на имейл, свързване на приложение със сървъра. Затова DNS е една от основите, без които мрежата практически не работи за обикновения потребител.

🌐 Сайтът се отваряЗаписите A и AAAA насочват посетителите към сървъра, на който е хостингът ви.
📧 Пощата пристигаMX записите казват на кой сървър да се доставят имейлите за вашия домейн.
✅ Имейлите са доверениTXT записите за SPF, DKIM и DMARC доказват, че писмата наистина идват от вас.
🔁 Лесна смянаАко преместите сайта на друг сървър, сменяте само един запис, а адресът за клиентите остава същият.

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

Как работи една DNS заявка

Когато въведете адрес, компютърът пита DNS резолвър, а той, ако не знае отговора, обикаля йерархията от DNS сървъри, докато не намери IP адреса. Обикновено това отнема части от секундата, а при повторно посещение е още по-бързо заради кеширането.

Въпрос. Браузърът пита: „Какъв е IP адресът на firma.bg?“ Първо проверява собствената си памет и тази на компютъра.
Резолвър. Ако отговорът не е запомнен, въпросът отива при DNS резолвъра, обикновено този на интернет доставчика ви или избран от вас.
Обиколка. Резолвърът пита коренния сървър, после сървъра за .bg, после авторитетния сървър на домейна.
Отговор. Авторитетният сървър връща IP адреса, резолвърът го запомня за определено време и го подава на браузъра.

Нека видим същото като разговор. Резолвърът пита коренния сървър за firma.bg. Коренният отговаря: „Не знам точния адрес, но ето кои сървъри отговарят за .bg.“ Резолвърът пита тях и получава: „За firma.bg питай тези nameservers.“ Накрая пита авторитетните nameservers на домейна и те дават окончателния отговор. Всеки сървър знае само своята част от картата, но заедно покриват целия интернет.

Участниците: резолвър, коренни, TLD и авторитетни сървъри

В DNS има четири основни роли: резолвърът търси отговора, а коренните, TLD и авторитетните сървъри го пазят на различни нива.

DNS резолвър (рекурсивен сървър)

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

Коренни сървъри

Те са върхът на йерархията. Не знаят адресите на отделните сайтове, а само кои сървъри отговарят за всяко домейн разширение като .com, .bg или .eu. Логически те са малко на брой, но физически са разпределени по целия свят, за да са бързи и устойчиви.

TLD сървъри

TLD означава домейн от първо ниво. Сървърите за .bg знаят кои nameservers отговарят за всеки домейн с това разширение. Тази информация идва от регистъра, когато регистрирате домейна. Повече за разширенията има в статията Какво е домейн?.

Авторитетни сървъри (nameservers)

Това са сървърите, които пазят истинските записи на вашия домейн: къде е сайтът, къде е пощата, кои TXT записи има. Те дават окончателния отговор. Когато в контролния панел редактирате DNS записите, всъщност променяте съдържанието на тези сървъри.

Видове DNS записи

DNS записите са редовете в зоната на домейна и всеки вид отговаря на различен въпрос: къде е сайтът, къде е пощата, кой отговаря за домейна и т.н. Ето най-често използваните.

ЗаписЗа какво служиПример
AСвързва име с IPv4 адресfirma.bg → 203.0.113.10
AAAAСвързва име с IPv6 адресfirma.bg → 2001:db8::10
CNAMEПсевдоним, който сочи към друго имеwww → firma.bg
MXСървърите, които приемат пощата, с приоритет10 mail.firma.bg
TXTТекстова информация: SPF, DKIM, DMARC, потвържденияv=spf1 ... -all
NSКои nameservers отговарят за домейнаns1.example.net
SOAОсновни данни за зоната: главен сървър, сериен номер, таймериСъздава се автоматично
CAAКои органи могат да издават SSL сертификати за домейна0 issue "letsencrypt.org"
SRVАдрес и порт на конкретна услугаИзползва се от някои приложения за чат и телефония
PTRОбратното: IP адрес към имеНастройва се от собственика на IP адреса

A и AAAA: адресът на сайта

Това са най-важните записи за сайта. Записът A пази IPv4 адрес, а AAAA пази по-новия и по-дълъг IPv6 адрес. Ако хостингът ви поддържа и двата, добре е да имате и двата записа.

CNAME: псевдоним

CNAME казва „това име е същото като онова“. Най-често се ползва за www, за да сочи към основния домейн. Важно ограничение: самият корен на домейна (firma.bg без нищо отпред) по правило не може да бъде CNAME, а име с CNAME не може да има други записи.

MX: пощата

MX записите казват на кой сървър да се доставят писмата до @firma.bg. Числото пред името е приоритет: по-малкото число се опитва първо. Ако имате два MX записа, вторият служи като резервен.

TXT: текст и проверки

TXT записите съдържат текст. Използват се за защита на пощата (SPF, DKIM, DMARC) и за потвърждаване, че притежавате домейна, когато свързвате външни услуги, например инструменти за анализ на сайта.

Как изглежда една DNS зона

DNS зоната е списъкът с всички записи на един домейн. В контролния панел я виждате като таблица, но в основата си тя е обикновен текст. Ето опростен пример за малка фирма:

firma.bg.        3600  IN  A      203.0.113.10
firma.bg.        3600  IN  AAAA   2001:db8::10
www.firma.bg.    3600  IN  CNAME  firma.bg.
firma.bg.        3600  IN  MX     10 mail.firma.bg.
mail.firma.bg.   3600  IN  A      203.0.113.20
firma.bg.        3600  IN  TXT    "v=spf1 a mx -all"
blog.firma.bg.   3600  IN  A      203.0.113.10

Как се чете всеки ред: първо идва името, после TTL в секунди, после класът IN (интернет), видът на записа и накрая стойността. Точката в края на имената означава пълно име. В повечето контролни панели не е нужно да я пишете, защото панелът я добавя сам.

Пример: Искате да пуснете блог на blog.firma.bg. Добавяте един запис A за името blog със стойност IP адреса на сървъра. Това е всичко, което DNS трябва да знае. Останалото се настройва в хостинга.

TTL и кеширане

TTL (Time To Live) е времето в секунди, за което резолвърите могат да помнят даден запис, преди да попитат отново. Кеширането прави интернет бърз, защото популярните отговори не се търсят наново при всяко отваряне на сайт.

TTLКолко еКога е подходящ
3005 минутиПреди планирана смяна на сървър или преместване
36001 часДобър баланс за повечето сайтове
864001 денЗаписи, които почти никога не се променят

Тук има полезен трик. Ако знаете, че след няколко дни ще местите сайта, намалете TTL на записа A до 300 секунди предварително. Когато дойде денят на смяната, резолвърите по света ще забравят стария адрес бързо и посетителите ще стигнат до новия сървър много по-скоро. След като всичко е наред, върнете TTL на обичайната стойност.

Nameservers: какво са и кога се сменят

Nameservers са авторитетните DNS сървъри на домейна. Те се задават при регистратора и определят къде се управлява цялата DNS зона. Обикновено изглеждат като две или повече имена от вида ns1.example.net и ns2.example.net.

Има два основни начина да свържете домейн с хостинг:

  • Смяна на nameservers. Насочвате домейна към nameservers на хостинга и оттам нататък всички записи се управляват там. Удобно е, когато сайтът и пощата са на едно място.
  • Смяна само на конкретни записи. Запазвате текущите nameservers и променяте само записа A (и при нужда AAAA). Така пощата и останалите услуги остават непокътнати.
Внимание: смяната на nameservers прехвърля управлението на всички записи. Ако пощата ви е при друга услуга и новата зона няма същите MX и TXT записи, имейлите спират да пристигат. Преди такава смяна запишете всички текущи записи и ги пренесете в новата зона. Когато се колебаете, сменете само записа A.

Подробно как се свързва домейн с хостинг ще разгледаме в отделна статия от поредицата. Ако търсите домейн, проверете свободните имена на страницата Домейни.

Защо промените не се виждат веднага

След промяна на DNS запис различни хора по света може да виждат стария или новия адрес за известно време, защото резолвърите пазят стария отговор, докато не изтече неговото TTL. Това често се нарича „разпространение на DNS“.

Всъщност новият запис е активен на авторитетния сървър почти веднага. Проблемът е в кеша: ако вашият резолвър е запомнил стария адрес преди половин час с TTL от един час, той ще продължи да го дава още половин час. При смяна на nameservers чакането обикновено е по-дълго, защото и записите на ниво TLD имат собствено време за кеширане.

Какво можете да направите, докато чакате:

  1. Изчистете кеша на браузъра или отворете сайта в режим инкогнито.
  2. Изчистете DNS кеша на компютъра. В Windows това става с командата ipconfig /flushdns, в macOS с sudo dscacheutil -flushcache.
  3. Проверете от телефона с мобилни данни, който използва друг резолвър.
  4. Използвайте онлайн инструмент, който проверява записа от много места по света едновременно.

DNS и имейлът

Пощата с вашия домейн зависи изцяло от DNS: MX записите насочват писмата, а SPF, DKIM и DMARC пазят от фалшификации и от папката за спам.

  • MX казва къде да се доставят входящите писма.
  • SPF е TXT запис със списък на сървърите, които имат право да изпращат поща от името на домейна.
  • DKIM добавя цифров подпис към всяко писмо, а публичният ключ за проверка е в DNS.
  • DMARC казва на получателите какво да правят с писма, които не минават проверките, и накъде да изпращат отчети.

Без тези записи писмата ви по-често попадат в спам, а измамници могат по-лесно да изпращат писма, които изглеждат като ваши. На тях ще посветим отделни статии в поредицата: как да имате имейл с домейн и как да настроите SPF, DKIM и DMARC стъпка по стъпка.

Как да проверите DNS записите

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

С командата nslookup (Windows, macOS, Linux)

nslookup firma.bg
nslookup -type=mx firma.bg
nslookup -type=txt firma.bg

С командата dig (macOS и Linux)

dig firma.bg A +short
dig firma.bg MX +short
dig firma.bg NS +short
dig +trace firma.bg

Последната команда, dig +trace, показва целия път на заявката: от коренните сървъри, през TLD, до авторитетните сървъри на домейна. Това е отличен начин да видите на практика всичко описано в тази статия.

Пример: Сайтът ви не се отваря след смяна на хостинга. Пускате dig firma.bg A +short и виждате стария IP адрес. Значи или записът не е сменен, или резолвърът още пази стария отговор. Пускате dig firma.bg NS +short, за да видите кой управлява зоната, и проверявате записа точно там.

Сигурност на DNS

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

DNSSEC

DNSSEC добавя цифрови подписи към DNS записите. Резолвърът може да провери, че отговорът наистина идва от собственика на зоната и не е подменен по пътя. Така се предотвратява атака, при която посетителите се пренасочват към фалшив сървър чрез подправен DNS отговор.

Криптирани DNS заявки

Обикновените DNS заявки пътуват некриптирани и всеки по пътя може да види кои сайтове посещавате. Технологиите DNS over HTTPS (DoH) и DNS over TLS (DoT) криптират тези заявки. Много съвременни браузъри и операционни системи вече ги поддържат и могат да ги включат с една настройка.

Защита на акаунта при регистратора

Най-честият реален риск не е техническа атака, а превзет акаунт. Ако някой влезе в профила ви при регистратора, може да смени nameservers и да пренасочи сайта и пощата. Затова:

  • използвайте силна и уникална парола и двуфакторна защита;
  • дръжте домейна заключен срещу трансфер, когато не го местите;
  • следете имейла, с който е регистриран домейнът, защото там идват важните известия;
  • добавете CAA запис, за да ограничите кой може да издава SSL сертификати за домейна. Повече за сертификатите има в статията Какво е SSL сертификат.

Чести грешки и как да ги избегнете

Сменени nameservers без пренасяне на пощата

Най-скъпата грешка. Сайтът тръгва на новия хостинг, но имейлите спират. Преди всяка смяна на nameservers запазете списък с текущите MX и TXT записи.

Липсва запис за www

Сайтът се отваря на firma.bg, но не и на www.firma.bg. Добавете CNAME или A запис за www и пренасочване към предпочитания вариант.

Два SPF записа

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

CNAME заедно с други записи

Име, което има CNAME, не може да има други записи. Ако сложите CNAME на корена на домейна, ще счупите MX и TXT записите му.

Забравен остарял запис

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

Митове за DNS

  • „DNS промените отнемат 48 часа.“ Не задължително. Времето зависи от TTL. При ниско TTL промяната на запис се вижда за минути. По-дълго чакане е типично главно при смяна на nameservers.
  • „DNS е същото като хостинг.“ Не. DNS само казва къде е сайтът. Самият сайт се намира на хостинга, а пощата може да е на трето място.
  • „Щом сайтът работи, DNS е наред.“ Не винаги. Сайтът може да се отваря, а пощата да не пристига заради липсващ или грешен MX или SPF запис.
  • „Колкото повече записи, толкова по-добре.“ Не. Излишните записи объркват и понякога създават рискове. Пазете зоната чиста и подредена.
  • „DNS се настройва веднъж и се забравя.“ Основното да, но всяка нова услуга, смяна на поща или хостинг изисква промяна. Добре е да знаете какво има в зоната ви.

Често задавани въпроси

Какво означава DNS?

DNS означава Domain Name System, тоест система за имена на домейни. Тя превежда имената на домейни като firma.bg в IP адресите на сървърите, на които се намират сайтовете и услугите.

Колко време отнема промяна на DNS запис?

Зависи от TTL на записа. При TTL от 300 секунди промяната обикновено се вижда за минути. При по-високо TTL или при смяна на nameservers може да отнеме от няколко часа до около ден или два.

Каква е разликата между A и CNAME запис?

Записът A свързва име директно с IP адрес. CNAME свързва име с друго име, което след това се превежда до IP адрес. A се използва за корена на домейна, а CNAME често за www и поддомейни.

Трябва ли да сменям nameservers, за да свържа домейн с хостинг?

Не е задължително. Можете да смените само записа A към IP адреса на хостинга и да запазите останалите записи. Смяна на nameservers е удобна, когато сайтът и пощата са на едно място.

Какво е MX запис?

MX записът казва на кой сървър да се доставят имейлите за вашия домейн. Числото пред него е приоритет и по-малкото число се опитва първо.

Защо сайтът ми се отваря на един компютър, а на друг не?

Най-често заради кеширане. Единият компютър или резолвър пази стария адрес до изтичане на TTL. Изчистете DNS кеша или проверете от друга мрежа.

Какво е DNSSEC и трябва ли ми?

DNSSEC добавя цифрови подписи към DNS записите, така че отговорите да не могат да бъдат подменени по пътя. Полезна допълнителна защита е, особено за бизнес домейни, ако регистраторът и DNS доставчикът я поддържат.

Как да видя DNS записите на домейна си?

В контролния панел на хостинга или регистратора, в раздела за DNS. Можете да ги проверите и с командите nslookup или dig, както и с онлайн инструменти за проверка на DNS.

Обобщение

DNS е невидимата карта на интернет. Той превежда името на домейна в IP адрес, насочва пощата и пази проверките, които правят имейлите ви доверени. Знаейки основните записи (A, AAAA, CNAME, MX, TXT, NS), значението на TTL и разликата между смяна на запис и смяна на nameservers, можете уверено да свързвате домейни, да местите сайтове и да избягвате най-честите грешки. В следващата статия ще видим как да изберем добро име на домейн за бизнеса.

Регистрирайте своя домейн

Проверете дали желаното име е свободно и го свържете с хостинг за минути.

Търсене на домейн
Сподели: Facebook X LinkedIn
Още от блога

Може да те заинтересува

Остави коментар

Your email address will not be published. Required fields are marked *

Нужен ти е хостинг?

Безплатен SSL, ежедневни бекъпи и сървъри в България, САЩ и Хонконг.

Виж плановете →