Отупваме от праха поредицата ни „Какво е DNS?“ с нова статия. Ще припомним, че DNS е виртуален указател, в който се посочва от кой сървър ще се зареди съдържанието на сайта, когато изпишем домейна му в адресната лента на браузъра. В DNS указателя тази информация се съхранява в записа „домейн.име=IP адрес“. А IP адресът е нужен на браузъра, за да намери уеб сървъра, от който да изтегли файловете на сайта.
В поредицата „Какво е DNS?“ досега описахме какво е DNS и защо се използва за транслиране на домейните в IP адреси, какви са нивата на домейн името в DNS указателя и какво е DNS проверка и DNS кеш.
В тази статия ще разкажем за най-важния компонент на DNS системата, в който се съхранява записа „домейн.име=IP адрес“ – DNS записите в DNS зоната.
Какво е DNS зона?
DNS зоната представлява един обикновен текстов файл, в който са изредени всички DNS записи за домейна. Този файл се нарича още DNS зонов файл.
DNS зоната се намира на един единствен нейм сървър – основният (master) отговорен (authoritative) нейм сървър за домейна. Всички останали нейм сървъри (slave), които ще са отговорни за домейна, копират DNS зоната от този основен отговорен нейм сървър.
По спецификация на DNS системата всеки домейн трябва да има поне два отговорни нейм сървъра, един основен и един резервен, в случай че първият не отговаря.
Бележка: За всеки домейн, който се регистрира при СуперХостинг.БГ, се задават по подразбиране два отговорни нейм сървъра – основен nsxy.superhosting.bg и резервен nsxz.superhosting.bg.
Всеки хостинг сървър е свързан с два определени нейм сървъра например nsxy.superhosting.bg и nsxz.superhosting.bg. При добавяне на домейн в cPanel на даден хостинг сървър, на основния нейм сървър nsxy.superhosting.bg се създава и неговата DNS зона. За домейна е нужно да се зададат същите тези два нейм сървъра, който са за хостинг сървъра, за да може да се направи връзката в DNS указателя (между домейн и DNS зона).
Погледнато от друг ъгъл DNS зоната е начин за разграничаване и отделяне на административната отговорност за отделните нива в домейн името. DNS зоните отговарят на нивата на домейн името в DNS указателя.
Нивата в домейн името се разглеждат отдясно наляво, вижте как в статията: Нивата на домейн името в DNS указателя (Какво е DNS?) | Blog
( 1 ) .bg – В DNS зоната на .bg домейна са записани всички регистрирани поддомейни на .bg домейна като superhosting.bg. Администраторът на .bg зоната делегира управлението на всеки един поддомейн към друг администратор. Делегирането се извършва, като за поддомейна (superhosting.bg) се поставят няколко записа от тип NS в зоната на .bg.
Домейните от първо ниво (TLD) се администрират от съответните Регистри – например Регистър.БГ за .bg домейна, Verisign за .com и .net домейна и други. Тези организации отговарят за поддръжката и вписването на нови записи в съответните им зони. Вписването на нови записи се случва при регистрацията на нов домейн. Регистрите работят с други организации, наречени Регистрари, през които може да се регистрират домейни. Регистрарите може да работят с Реселъри, които да предлагат домейни за регистрация на крайните потребители. Разбира се, има и изключения например за .bg домейна Регистър.БГ е Регистър и Регистрар.
( 2 ) superhosting.bg – DNS зоната на домейна се администрира от СуперХостинг.БГ. В тази зона са добавени записите за всички съществуващи поддомейни към домейна.
Домейните от второ ниво (2LD) имат свои зони и администратори например СуперХостинг.БГ е администратор на superhosting.bg домейна.
( 3 ) Домейните от трето ниво не е задължително да се отделят административно, но има някои специфични като mysite.a.bg, somesite.co.uk.
DNS записите за blog.superhosting.bg се намират в зоната на superhosting.bg. В случая СуперХостинг.БГ може да делегира зоната на поддомейна blog.superhosting.bg към друг администратор, като добави съответните NS записи за него в зоната на superhosting.bg.
Hosts файл
Преди появата на DNS системата, ролята на DNS зоната е играел системният файл hosts.
Hosts файлът е текстов системен файл, наличен във всяка операционна система. Той е предшественик на DNS системата. Както и в DNS системата, hosts файлът се използва за транслиране на домейните в IP адреси. Hosts файлът съдържа записи, подобни на DNS записите – IP адрес, последван от едно или повече домейн имена, разделени с интервал.
Тъй като hosts файлът все още се използва, с него можете да насочите локално (само за Вашия компютър) даден домейн към определен IP адрес, без реално това да се отрази в DNS указателя. По този начин можете да видите сайта си, без да сте задали нейм сървъри за домейна му.
Вижте още за hosts файла в статията: Hosts файл – предшественикът на DNS | Blog
Какво са DNS записите?
DNS записите в DNS зоната се наричат ресурсни записи (RR) и са един от основните три компонента на DNS система. Другите два са: нейм сървърът и DNS резолверът.
Чрез ресурсните записи се посочват ресурси и услуги към домейна. Например чрез DNS записа от тип „MX“ посочваме, че мейл услугата за домейна goodexample.eu е налична на сървър с име mail.goodexample.eu.
Всеки DNS запис има параметри: хост, TTL (време за актуалност), клас, тип и стойност.
Най-често използваният DNS запис – А записът изглежда така:
goodexample.eu. 1800 IN A 123.45.67.8
- goodexample.eu
Име на хост е самият домейн. Ако искаме да насочим поддомейна му blog.goodexample.eu към определен сървър, „А“ записът ще съдържа само хоста „blog“: blog 1800 IN A 12.34.56.7
- 1800
TTL – времето за актуалност на този запис (или срок на годност). Времето за актуалност се задава в секунди и указва на кеширащия DNS сървър за какъв период записът се счита за актуален и може да се пази в кеша.
- IN
Клас (class) – посочва средата, за която важи този запис – в случая интернет (Internet). Съществуват още няколко класа – Chaos (CH) и Hesiod (HS). Но когато става въпрос за интернет ресурси, услуги, домейни, хостове, сървъри, IP адреси се използва IN (Internet).
- A
Тип на записа. В А записа може да се зададе IP адрес.
- 123.45.67.8
Стойност на записа, в случая IP адресът на уеб сървъра, от който ще се предоставя съдържанието на сайта.
Различните типове DNS записи
Има различни типове ресурсни записи.
SOA (Start of Authority)
DNS зоната се идентифицира с един DNS запис в началото на зоновия файл – Start of Authority (SOA). В този запис се поставя информация за администратора на зоната, кой е основният (master) отговорен нейм сървър и допълнителни параметри като версия на файла, минимума TTL и други. Промяна във версията (или серийния номер) на файла е индикатор за резервните (slave) нейм сървъри, че трябва да копират информацията на DNS зоната наново от master сървъра, тъй като тя се е променила.
Примерен SOA запис:
@ IN SOA ns-master.superhosting.bg hostmaster.goodexample.eu ( 2018110201 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL )
hostmaster.goodexample.eu – Тази стойност всъщност посочва имейл адреса на администратора на зоната: hostmaster@goodexample.eu. Имейл адресът се изписва по специфичен начин в зоновия файл – с точка, вместо с „@“.
NS (Name Server)
NS записът посочва отговорен нейм сървър за DNS зоната на домейна. Когато NS записът се намира в горната зона (.eu), тогава целта му е само да насочва заявките към отговорния нейм сървър. Когато NS записът е в самата зона на домейна (NS) – това показва, че даденият нейм сървър е отговорният за домейна. Тези NS записи се кешират, така че при следваща заявка за запис от тази зоната, DNS клиентът няма да се обръща към горните зони (.eu, root).
Примерни NS записи, намиращи се в зоната на .eu домейна:
goodexample.eu. 3600 IN NS ns119.superhosting.bg. goodexample.eu. 3600 IN NS ns120.superhosting.bg.
Glue записи
За да е възможно домейнът (goodexample.eu) да ползва собствени отговорни нейм сървъри (например ns1.goodexample.eu), които са част/поддомейни от него, в горната зона (.eu) е нужно да се поставят и съответните А записи за тях. Тези записи се наричат Glue записи, залепени/свързващи записи, защото по подразбиране мястото им не е там. Също така в DNS зоната за домейна (goodexample.eu) се поставят съответните А записи за поддомейните (ns1, ns2 …).
При проверка в DNS чрез dig, тези записи се виждат в раздел „;; ADDITIONAL SECTION:“.
А (Address)
В А записа се поставя домейн или хост и се посочва IP адрес v.4, където се намира ресурсът/услугата. Когато IP адресът е версия 6, тогава се използва тип AAAA.
Например уеб услугата към домейна goodexample.eu е посочена с А запис и IP адрес на уеб сървъра:
goodexample.eu. 1800 IN A 123.45.67.8
Когато отваряме уебсайт в браузъра, този запис се търси в DNS указателя, за да може съдържанието на сайта да се изтегли и изобрази в прозореца.
Всички приложения, на които им трябва IP адрес, за да се свържат с отдалечена машина в интернет, ще потърсят А записа на домейна/хост името – за пример уеб браузърът.
CNAME (Canonical Name)
CNAME записът посочва, че даденият домейн е синоним да друг домейн.
www 1800 IN CNAME goodexample.eu
MX (Mail Exchanger)
MX записът посочва имейл сървър, който отговаря за имейл услугата към домейна.
goodexample.eu. 1800 IN MX mail.goodexample.eu
Важно уточнение за този запис е, че той показва кой е мейл сървърът, който отговаря за приемането и доставката на писма за домейна. Всеки, който изпраща писма към мейл адрес на домейна (goodexample.eu), първо ще провери за този MX запис в DNS, след което ще насочи писмото към съответния мейл сървър (mail.goodexample.eu).
TXT (Text)
TXT записът е DNS запис, в който се съдържа текст. TXT записът се използва от различни услуги и технологии, като например SPF, DKIM, DMARC и други.
Примерен TXT (SPF) запис:
goodexample.eu. 1800 IN TXT "v=spf1 ip4:195.191.148.12 ~all"
TXT записът се използва и за верификация на домейна (или собствеността върху домейна).
Примерен TXT запис за верификация на домейна в Google:
goodexample.eu. 3600 IN TXT "google-site-verification-ldUyfoaidhfLfo7g"
Редакция на DNS зоната (DNS записите)
Редакцията на DNS зоната представлява редакция на текстовия файл и записите в него. Ръчна промяна на записите директно в зоновия файл е възможна, но за да се избегнат грешки и неправилни записи, се използва специален интерфейс.
В зависимост от това къде се намира DNS зоната, съществуват различни панели за управлението ѝ.
Панел за управление на DNS зоната в cPanel
Когато домейнът е добавен в cPanel и за него са зададени нейм сървърите на СуперХостинг.БГ, отговарящи за хостинг сървъра, DNS зоната му се намира на основния нейм сървър nsxy.superhosting.bg и се управлява през контролния панел cPanel » Редактор на DNS зони.
Панел за управление на DNS зоната в клиентския профил
Когато за домейна е активиран DNS хостинг, DNS зоната му се намира на специални нейм сървъри и се управлява през клиентския профил в superhosting.bg.
Какво е DNS хостинг?
DNS хостинг е услуга, чрез която може да се управлява DNS зоната на домейна, без да му се задават определени нейм сървъри. При активиране на DNS хостинг, за домейна се задават специални нейм сървъри, на които се хоства (създава и управлява) DNS зоната и записите му.
След като знаете какво е DNS зона, може би се чудите къде се намира тя? Ако не знаете къде се намира DNS зоната на домейна Ви, можете да проверите какви нейм сървъри са му зададени. За проверки в DNS може да използвате инструменти като nslookup и dig или специализиран уеб инструмент.
Има още интересни неща, свързани с DNS указателя, за които ще продължим да пишем в поредицата ни „Какво е DNS?“. Не забравяйте да се абонирате за нашия блог, за да получите имейл нотификация за всяка следваща нова статия.