DNS

DNS за начинаещи Как работи DNS?

DNS за начинаещи Как работи DNS?
Системи за имена на домейни, или DNS, е съществена част от конфигурирането на мрежи, уебсайтове и сървъри.

Когато научите как работи DNS и как можете да приложите използването му в реални мрежи, диагностицирането на мрежови проблеми става бриз. Освен това, овладяването на тънкостите на работата с DNS също ще ви даде дълбоко разбиране за това какво се случва зад кулисите на DNS търсене и валидиране.

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

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

Какво е DNS?

DNS или Система за имена на домейни е база данни с интернет адреси, индексирани с имена на домейни. За простота, помислете за DNS като за адресна книга, която препраща уеб трафика от сървър към клиент.

DNS карти разпознава имена на домейни, като например linuxhint.com, до неговия IP адрес като 64.91.238.144 (IPv4) или 0: 0: 0: 0: 0: ffff: 405b: ee90 (IPv6).

Как работи DNS?

Преди да обсъдим как да добавяме и модифицираме DNS записи, нека разгледаме как работи DNS, като започнем с дефинирането на някои основни DNS функции:

1: Имена на домейни

Можем да дефинираме имената на домейни като уникален низ от символи, който идентифицира обект в интернет. Обектът може да представлява уебсайт, IoT интерфейс и т.н.

Най-добрият начин да разберете имената на домейни е като ги прочетете, започвайки отдясно наляво. Цялостната организация на домейна започва отдясно и развива повече специфичност вляво.

Помислете за примерните домейни, показани по-долу:

linuxhint.com

поща.информация.linuxhint.com

В примерите по-горе домейните се разбират най-добре отдясно наляво, като домейнът TLD или Top-Level е .com

Другите термини, които се появяват отляво на TLD, са разделени с точка и се считат за специфични поддомейни.

Например:

В такъв случай, поща.linuxhint.com може да се използва само за обработка на поща за конкретния домейн. Когато се отнася до домейни (основен), той включва поддомейн от първо ниво плюс TLD като linuxhint.com

Докато се движите вляво от TLD, информация, и поща се наричат ​​съответно поддомейни от второ и трето ниво.

В повечето случаи поддомените се използват за идентифициране на конкретни услуги или машини. Собствениците на домейн обаче могат да ги използват по какъвто и да е начин, който преценят.

2: Имен сървъри

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

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

Сървърите на имена използват текстов файл, наречен файл на зона, за да хостват DNS данни на домейн. Зоновите файлове понякога се наричат ​​Start of Authority Records (SOA). Можете да хоствате DNS информация на сървъри за имена:

Опции като хостване на вашата DNS информация на вашия собствен DNS сървър осигуряват по-голям контрол върху DNS процеса, отколкото повечето други опции.

3: DNS записи и зонови файлове

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

Ето пример за файл с DNS зона:

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

4: DNS резолюция

Най-простият начин да разберете как работи DNS е чрез изучаване на DNS резолюция.

Нека поговорим за това:

Името на домейн трябва да бъде преведено от разбираем за човека формат, като linuxhint.com, до IP адрес. Това е така, защото машините разбират само IP адреси, но не и имена на домейни.

Както споменахме, това се случва с помощта на файла с текстова зона, който съхранява списък с домейни и техните IP адреси.

Поради това:

Когато въвеждате име на домейн като linuxhint.com във вашия браузър, вашето свързано с интернет устройство използва вашия ISP DNS преобразувател, за да поиска коренния сървър за имена за правилния TLD сървър на име.

Помислете за това като за вашия компютър, който пита разрешителя, „къде мога да намеря сървъра за имена .com домейни?”

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

След като ISP прочете IP адреса на домейна, например linuxhint.com, той отговаря на вашия браузър, позволявайки ви достъп до уеб сървъра.

Добре е да се отбележи, че процесът на разрешаване на DNS се случва само ако DNS преобразувателят на ISP няма запис на заявения домейн. В повечето случаи ISP извършва DNS кеш за предварително заявени домейни, което води до по-бързо DNS търсене и по-малко натоварване на DNS сървърите.

Въпреки че кеширането е нещо добро, понякога може да доведе до проблеми, особено промени в DNS информацията. Можете да използвате TTL или Time to Live, за да видите времето, необходимо за разрешаване на DNS.

Тъй като вече знаете как работи DNS, нека обсъдим видовете DNS записи.

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

Ето основните типове DNS записи:

A и AAAA Records

Вида DNS Записът е IPv4 DNS запис, използван за насочване към IP адреса на вашия сървър, което позволява на уеб трафика да стигне до вашия сървър.

Ето пример за DNS запис от тип A:

linuxhint.com A 64.91.238.144

поща.linuxhint.com A 64.91.238.144

DNS правилата позволяват насочването на множество поддомейни към различни IP адреси. Можете също да насочите всички поддомейни към един IP адрес. Например. Насочете всички поддомейни за linuxhint.com към единичен IP, като се използва звездичка:

*.linuxhint.com A 64.91.238.144

The АААА тип запис е подобен на запис A, но се използва за IPv6 IP адреси. Типичен AAAA запис може да изглежда подобно на:

linuxhint.com AAAA 0456: 7890: 13ab: cdef: 0145: 5567: 59ab: cdef

Записи AXFR

An AXFR Записът е DNS запис, използван при DNS репликация. Записите AXFR се прилагат главно за подчинени DNS сървъри, където помагат за репликация на зонови файлове от главните DNS сървъри. Рядко ще намерите AXFR записи в файловете на главната зона.

Добре е да се отбележи, че те са по-ефективни и модерни начини за извършване на DNS репликация, различни от използването на записи AXFR.

CNAME Records

A CNAME или Запис на канонично име съвпада с домейн с друг домейн. Записите CNAME позволяват на DNS справките да използват DNS разрешаването на целевия домейн като разделителна способност на псевдоним. Помислете за примера по-долу:

псевдоним адрес.com CNAME linuxhint.com.

linuxhint.com A 64.91.238.144

От записа:

След като DNS търсене за псевдоним адрес.com се изпълнява, процесът среща CNAME запис, който сочи към друг адрес - в този случай linuxhint.com.

Той ще инициира ново DNS търсене за целевия адрес (linuxhint.com), който открива IP адреса на 64.91.238.144, като по този начин насочва трафика към IP адрес 64.91.238.144.

Основната цел на записите CNAME е да позволят на домейните да имат псевдоними.

ЗАБЕЛЕЖКА: Някои пощенски сървъри използват CNAME записи за получаване на поща. Затова е добре да избягвате използването на CNAME записи за домейн, предназначен за получаване на поща.

По същия начин не можете да използвате MX записи за препратка към CNAME дефинирани имена на хостове. Също така е добре да се гарантира, че целевите домейни съдържат резолюция на A-запис.

Въпреки че записите CNAME могат да бъдат ефективен начин за пренасочване на трафик от определен домейн към друг домейн, записът не функционира като HTTP 302 пренасочване.

Записи CAA

CAA записите позволяват на собствениците на домейни да определят кои сертифициращи органи могат да издават сертификати за този конкретен домейн.

DKIM Records

DKIM или Домейн ключове Идентифициран пощенски запис показва публичните ключове, използвани за удостоверяване на съобщения, подписани от протокола DKIM. Той подобрява функционалността на проверката на автентичността на пощата.

Типичен DKIM запис може да изглежда както следва:

селектор1._domainkey.linuxhint.com TXT k = rsa; p = J7eTBu445i045iK

DKIM DNS записите се прилагат като тип запис TXT. Те се създават от поддомейн с уникален селектор за този специфичен ключ, последван от точка, завършваща с _domainkey.домейн.com (linuxhint.com).

От примера по-горе виждаме DKIM записа от тип TXT, стойност, която показва типа ключ (RSA), и накрая, стойността на ключа.

MX Records

Записите на MX или Mail Exchanger помагат да зададете дестинации за доставка на поща за определен домейн или поддомейни.

Ето пример за MX запис:

linuxhint.com MX предпочитание = 5, обменник на поща = ALT1.ASPMX.L.GOOGLE.com

linuxhint.com MX предпочитание = 1, обменник на поща = ASPMX.L.GOOGLE.com

linuxhint.com MX предпочитание = 5, обменник на поща = ALT2.ASPMX.L.GOOGLE.com

linuxhint.com MX предпочитание = 10, пощенски обменник = ALT4.ASPMX.L.GOOGLE.com

linuxhint.com MX предпочитание = 10, пощенски обменник = ALT3.ASPMX.L.GOOGLE.com

Записът в горния пример насочва пощата за домейн (linuxhint.com) към сървъра ALT1.ASPMX.L.GOOGLE.COM

Приоритетът или предпочитанието е ключов компонент на MX записите. Използва се за представяне на записания номер между типа на записа и целевия сървър. Ниските числа се използват за обозначаване на по-висок приоритет.

Например, ако сървър ASPMX.L.GOOGLE.COM не работи, пощата се доставя до ALT1.ASPMX.L.GOOGLE.COM или ALT2.ASPMX.L.GOOGLE.COM

NS Records

NS или Nameserver записите са най-често срещаният тип DNS записи.

Те се използват за задаване на сървърите на имена за домейн или поддомейн. По подразбиране NS записите за домейн се задават както във вашия зонов файл, така и в регистратора на домейна.

Ето пример за NS записи:

linuxhint.com сървър на имена = ns1.течна мрежа.com

linuxhint.com nameserver = ns.течна мрежа.com

Сървърите на имена, зададени в регистратора на домейни, са отговорни за носенето на зоновия файл за домейна.

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

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

PTR записи

PTR записите, наричани още записи на указатели, се използват за обратно DNS търсене. Те съответстват основно на IP адрес на домейн или поддомейн. Можете да считате PTR записа за обратен на A или AAAA записите; неговите функции са противоположни на тези на A запис.

Записът ви позволява да търсите домейн, свързан с определен IP адрес. От друга страна, PTR записите ви позволяват да търсите IP адреса, свързан с конкретно име на домейн. Тези записи се задават главно от доставчик на хостинг услуги и не са включени във вашия зонов файл.

Трябва да създадете валиден запис, който насочва домейна към целевия IP адрес, преди да създадете PTR запис. Използвайте запис за IPv4 адрес и AAAA за IPv6 адреси.

DNS правилата ви позволяват да имате различни IP адреси, както IPv4, така и IPv6, сочещи към един и същи домейн, зададен за обратен DNS, чрез конфигуриране на множество A и AAAA записи за конкретен домейн, сочещи към различни IP адреси.

SOA Records

Записите SOA или Start of Authority се използват от DNS за обозначаване на файл на зоната с името на хоста, където е бил създаден първоначално. Той също така показва имейл адреса на лицето, което притежава домейна.

Ето пример за типичен SOA запис:

@ IN SOA ns.течна мрежа.com. администратор.течна мрежа.com. 20200627 14000 14000 1009600

86400

ЗАБЕЛЕЖКА: Административният имейл се изразява с помощта на точка (.), а не символ @.

SOA записите включват следните стойности:

Сървърът с имена, посочен в SOA записа, се счита за основен мастер за използване в динамичния DNS. Динамичният DNS е сървърът, където актуализациите на зоновите файлове завършват, преди да бъдат разпространени към други сървъри на имена.

TXT записи

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

Една от често използваните записи TXT е създаването на DKIM записи и SPF записи. Ето пример за TXT запис:

linuxhint.com текст =

“Google-site-verify = tf_9zclZLNBJ5M ... XXX ... _0nSA”

SPF Records

Sender Policy Framework записва списъка за пощенските сървъри на определен домейн или поддомейн. SPF записите помагат да се докаже автентичността на пощенския сървър, като сигнализира за опити за подправяне, използвани с помощта на общия метод за фалшифициране на заглавки на имейли за определен домейн, като изглежда, че произхожда от легитимен сървър, като по този начин избягва филтрите.

Ето пример за запис на SPF:

linuxhint.com TXT “v = spf1 a ~ всички”

Препоръчително е да изброите всички сървъри в записа SPF, който използвате за изпращане на поща, и да изключите останалите.

Записът SPF има предимно домейн, тип (TXT или SPF, ако се поддържа) и стойност, започваща с v = spf1, която съдържа настройки за запис на SPF.

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

SRV Records

Записите на услуги или SRV помагат да се съпоставят услугите, работещи в даден домейн, с целевите домейни, което ви позволява да насочвате трафика от конкретни услуги към друг.

Ето пример за SRV запис:

_обслужване._протокол.linuxhint.com SRV 10 0 8080

обслужване.linuxhint.com

SRV записите имат следните елементи:

Ръководство за бързо копаене

Използването на инструмент за ръчно запитване е един от най-добрите начини за разбиране и работа с DNS. Нека да разгледаме как да инсталирате и изпълнявате прости DNS заявки с помощта на инструмента Dig.

Можете да използвате допълнителни инструменти като nslookup.

Инсталиране на Dig

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

Преди да можем да използваме dig, трябва да го инсталираме. Dig е част от DNS помощните програми в пакета Bind DNS server и можете да инсталирате тези пакети, като използвате диспечера на пакети за вашата дистрибуция.

Debian и Ubuntu

apt-get инсталирайте dnsutils

CentOS

yum инсталирате bind-utils

Използване на Dig

Помислете за следните прости изходни кодове.

От горната заявка dig връща резултат NOERROR и извлича A DNS запис за името на домейн linuxhint.com, който се разрешава до IP адреса на 64.91.238.144.

С помощта на dig можете да видите повече информация, плюс използвания DNS преобразувател (1.1.1.1 - Cloudflare), времето, необходимо на изпълнението на DNS заявка, както и размерът на заявката.

Използвайте dig за извличане на различни типове записи

Можете да използвате dig за извличане на информация за конкретни DNS записи, като посочите типа DNS запис в командата.

Помислете за показания изход по-долу:

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

Заключение

В тази статия научихме какво представлява DNS и как работи. Покрихме важни DNS концепции като имена на домейни, DNS резолюция и записи и как да използваме инструмента Dig за изследване на DNS.

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

Как да покажа брояч на FPS в игрите на Linux
Linux игрите получиха голям тласък, когато Valve обяви поддръжка на Linux за Steam клиент и техните игри през 2012 г. Оттогава много AAA и независими ...
Как да изтеглите и пуснете Civilization VI на Сид Майер на Linux
Въведение в играта Civilization 6 е модерен поглед върху класическата концепция, въведена в поредицата от игрите Age of Empires. Идеята беше доста про...
Как да инсталирате и играете Doom на Linux
Въведение в Doom Серията Doom възниква през 90-те години след пускането на оригиналния Doom. Това беше незабавен хит и от този момент нататък серията ...