Статьи

Домен. Для чого потрібна DNS

  1. DNS - погляд зсередини
  2. Зворотній DNS
  3. реєстратори доменів
  4. Хто перший встав - того і чоботи
  5. оплата домену
  6. Кешування запитів до DNS
  7. Як відбувається реєстрація домену

Як тільки мережа Internet вийшла за межі дослідницьких лабораторій, стало ясно, що нормальна людина не в змозі запам'ятовувати цифрові IP-адреси, а імена комп'ютерів, складені зі звичайних слів і скорочень, запам'ятовуються куди як простіше

Як тільки мережа Internet вийшла за межі дослідницьких лабораторій, стало ясно, що нормальна людина не в змозі запам'ятовувати цифрові IP-адреси, а імена комп'ютерів, складені зі звичайних слів і скорочень, запам'ятовуються куди як простіше.

Спочатку проблему вирішили просто - створили великий файл HOSTS.TXT, в який і записали всю таблицю відповідності адрес і імен комп'ютерів. Цю таблицю вів координатор і викладав на FTP-сервер. Всі користувачі тодішнього Internet час від часу скачували поточну таблицю і встановлювали на свої комп'ютери. (Рудименти цієї таблиці до сих пір залишилися в більшості операційних систем.)

Кількість комп'ютерів в Internet росло дуже швидко, і незабаром файл HOSTS. TXT став таким величезним, що його підтримка початку віднімати занадто багато часу і сил. Та до того ж і координатор Internet як такої перестав існувати. І ось на початку 80-х років була розроблена розподілена система DNS (Domain Name Service - служба доменних імен).

DNS - погляд зсередини

Основна мета мережевий служби DNS, як уже було сказано, - поставити у відповідність символьному адресою комп'ютера (т. Е доменному імені) його IP-адресу. Доменне ім'я комп'ютера складається з двох частин: ім'я комп'ютера і домен, в якому воно знаходиться. Наприклад, комп'ютер www.roga-kopyta.msk.ru має ім'я www і знаходиться в домені roga-kopyta.msk.ru. Точно так же домен roga-kopyta.msk.ru розкладається далі.

Доменне ім'я дуже схоже на шлях до файлу в файлової системі, тільки читається воно в зворотну сторону і майданчиках не косими рисами (/ або \), а точками. У DNS, як і в файлової системі, є корінь - він позначається найправішій точкою, є відповідні каталогам домени і відповідні файлів комп'ютери.

Вузлами DNS служать так звані сервери імен (nameservers), іноді їх називають серверами DNS. Кожен сервер зберігає інформацію про декілька доменах. Зазвичай ця інформація знаходиться в файлах, які називають зонами. Строго кажучи, фізично у вигляді файлу зона може і не існувати, а наприклад, зберігатися в якийсь базі даних. Кожна зона відповідає одному домену.

Зона складається з записів. У кожній зоні обов'язково є запис SOA. У SOA записаний головний сервер імен для зони, адреса електронної пошти адміністратора, номер версії та інша інформація, необхідна для синхронізації зон на декількох серверах.

Найпростіша запис - A. Вона зберігає відповідність імені комп'ютера і його IP-адреси. Наприклад, запис www IN A 193.12.13.14 позначає, що комп'ютер www в даному домені (тому, якому відповідав би зона) має IP-адресу: 193.12.13.14.

Інша часто зустрічається запис - MX. Вона вказує ім'я комп'ютера, на який необхідно пересилати всю електронну пошту, що приходить на адреси в цьому домені. У зоні може бути кілька записів MX, і для кожної вказується вага. В такому випадку відправник буде намагатися з базами даних на всі комп'ютери, зазначені в MX, починаючи з має найменшу вагу.

Для вказівки серверів імен служать записи NS. Вони використовуються в двох випадках. По-перше, коли в зоні для будь-якого домену вказуються всі сервери імен для нього (наприклад, IN NS ns.provider.ru, т. Е. Для даного домена одним з серверів імен є комп'ютер ns.provider.ru). По-друге, коли є вказівка ​​на сервери імен для домену нижчого рівня всередині даного домену. Тобто запис sales IN NS ns.roga-kopyta.msk.ru в зоні для домену roga-kopyta.msk.ru говорить про те, що для домену sales.roga-kopyta.msk.ru сервером служить комп'ютер ns.roga-kopyta .msk.ru. Звичайно, для кожного сервера, згаданого в запису NS, повинна існувати запис A з його адресою в тій же зоні або в зоні іншого домену.

Зазвичай для кожного домена зона розміщується на декількох серверах (перш за все з метою надійності). При цьому оригінальна копія зони зберігається на одному сервері, званому первинним. Решта сервери, на яких зберігається зона, називаються вторинними і автоматично отримують копію з первинного сервера. Щоб вторинні сервери "знали", коли треба оновлювати свою копію зони, в запису SOA є спеціальне поле serial (порядковий номер). При кожній зміні зони на первинному сервері необхідно збільшувати значення serial. Вторинні сервери час від часу (період задається теж в запису SOA) перевіряють serial зони на первинному сервері і при необхідності оновлюють свої копії.

DNS починається з так званих кореневих серверів. Зараз їх 13 штук, вони розташовані в США і зберігають зони для кореневого домену (домену "."). Далі йдуть домени першого рівня (top-level domains, TLD). Кожна країна має свій домен, відповідний її дволітерні коду ISO. Наприклад, домен Росії - ru, України - ua. Крім географічних доменів широко використовуються традиційні TLD, що залишилися з тих часів, коли Internet ще не була інтернаціональною мережею. Це домени: com - для комерційних організацій, net - для мережевих організацій, edu - для освітніх установ, org - для громадських (неприбуткових) організацій і mil - для військових установ США. Кореневі сервери зберігають інформацію про серверах імен для всіх доменів першого рівня.

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

Зворотній DNS

Як вже було сказано, DNS зберігає пряме відповідність між доменним ім'ям і IP-адресою. Але часто буває потрібно зробити зворотне перетворення - т. Е., Знаючи IP-адресу, дізнатися доменне ім'я. Щоб не створювати нову мережеву службу, для таких перетворень придумали спеціальне розширення DNS - reverse DNS (зворотна DNS).

Зворотній DNS влаштована точно так же, як і пряма, але в якості доменного імені використовується спеціальним чином записаний IP-адреса, перетворений в ім'я в домені in-addr.arpa. Наприклад, 195.14.50.23 буде виглядати як 23.50.14.195.in-addr.arpa. Це звичайнісіньке доменне ім'я, і ​​воно також входить в ієрархічну ланцюжок в домені in-addr.arpa. У зонах, відповідних доменів зворотного DNS, для кожної адреси (точніше, відповідного імені в in-addr.arpa) зберігається дані PTR, яка має йому у відповідність доменне ім'я.

Основна вимога до зворотного DNS - збіжність. Тобто, якщо перетворити IP-адресу через зворотний DNS в доменне ім'я, а потім доменне ім'я, користуючись звичайною службою DNS, в IP-адресу, повинен вийти той же самий адресу. Деякі сервери використовують цей критерій для обмеження доступу. Мається на увазі, що необхідність внесення відповідних узгоджених записів утруднить зловмисникові спроби видати себе за якийсь інший хост в Internet.

Зазвичай зони зворотної DNS створюються і підтримуються провайдерами, розподіляють відповідні мережі та підмережі IP-адрес.

реєстратори доменів

Реєстрацією нових доменів займаються спеціальні організації - реєстратори. Вони ведуть базу даних по всіх доменів, а також підтримують безпосередньо сервери імен для відповідних доменів.

Наприклад, реєстратором доменів в домені .ru є Російський науково-дослідний інститут розвитку громадських мереж (РосНИИРОС, англійська абревіатура RIPN; www.ripn.net ). Він підтримує базу даних по всіх доменів в зоні .ru і сервери імен для домену .ru (але не для доменів всередині .ru!).

Реєстратором доменів в .com, .net, .org є INTERNIC ( www.internic.net ). Він точно так же зберігає базу даних, підтримує сервери імен і займається прийомом платежів за реєстрацію доменів.

Крім реєстраторів для доменів першого рівня можуть існувати реєстратори і для інших доменів. Наприклад, в Росії прийнята так звана система доменів загального користування. Це географічні домени (msk.ru, spb.ru і т. Д.) І домени за класами (com.ru, net.ru, edu.ru, med.ru - для медичних організацій, pp.ru - для приватних осіб) . Ведення більшості таких доменів передано іншим організаціям-реєстраторам. Наприклад, географічний домен для будь-якого міста може вести великий провайдер, що знаходиться в цьому місті.

Хто перший встав - того і чоботи

Практично у всіх доменах зараз застосовується принцип first come - first served. Тобто першим подав заявку на будь-якої домен отримує можливість зареєструвати його без будь-яких додаткових умов. Винятком є ​​тільки РосНИИРОС, який вимагає від претендента заявку підтвердити своє право на володіння доменом (наприклад, довести, що ім'я домену вироблено від назви організації). Деякі ж домени до недавнього часу перебували в так званому стоп-аркуші і взагалі не могли бути зареєстровані.

Зі збільшенням кількості реєстрованих доменів такі порядки призвели до цілком зрозумілим спорах між Росниирос і претендентами. Та й практика складання стоп-листа виглядала дуже дивно. Наприклад, не можна було зареєструвати домен telecom.ru і в той же час був зареєстрований telekom.ru. У стоп-аркуші був mail.ru і email.ru і не було post.ru. Зрештою порядок реєстрації пом'якшав, і тепер в .ru можна зареєструвати практично будь-який домен.

Побічним ефектом реєстрації доменів по приципу first come - first served стала торгівля доменами. Торговці доменами заздалегідь скуповують все більш-менш перспективні імена і потім перепродують їх бажаючим набагато дорожче.

оплата домену

Реєстрація деяких доменів абсолютно безкоштовна, наприклад у всіх географічних і інших доменах загального користування в ru. Але ось реєстрація доменів другого рівня коштує грошей, причому різні реєстратори встановлюють різні ціни.

Реєстрація в Internic коштує $ 35 за домен в рік, але заплатити треба відразу за два роки вперед (т. Е. $ 70). Реєстрація домену в РосНИИРОС в зоні .ru подорожче і коштує $ 100. Ця сума включає оплату права користування доменом протягом одного року, в подальшому доведеться платити по $ 50 в рік.

Зовсім необов'язково реєструвати домен самому. Більшість провайдерів Internet можуть за невелику плату взяти цю роботу на себе. Але не забудьте переконатися, що домен зареєстрований саме на вас, а не на провайдера, інакше можливі проблеми з перенесенням домену, якщо раптом ви захочете змінити провайдера.

Кешування запитів до DNS

У загальному випадку кожен запит до DNS вимагає послідовного проходження всього дерева, починаючи з кореневих серверів. Звичайно, це дуже неефективно, і, щоб уникнути безлічі запитів до всіх серверів в ланцюжку, сервери імен виконують ще одну функцію - кешування. При цьому користувач звертається із запитом до найближчого сервера імен (зазвичай до сервера провайдера або сервера імен у власній локальній мережі). Цей сервер вже самостійно виробляє "дозвіл" (resolving) запиту, т. Е. Відбувається при необхідності по дереву DNS і повертає користувачеві відповідь.

На початку роботи у кешуючого є інформація тільки про адреси кореневих серверів. Ці адреси змінюються вкрай рідко, і їх список просто поставляється в комплекті серверів імен. Однак, вирішуючи імена, сервер поступово накопичує додаткову інформацію (наприклад, зробивши запит до www.alexhost.ru , Він послідовно дізнається адреси серверів імен для домену .ru, домену .alexhost.ru і адреса, відповідний доменному імені www.alexhost.ru. Якщо, наприклад, в майбутньому прийде запит на доменне ім'я www.support.alexhost.ru, кешуючий сервер імен та при наявності запиту зможе відразу звернутися до вже відомих йому серверів імен для домену alexhost.ru, не проходячи всю DNS-ланцюжок заново.

Час, протягом якого кешуючий сервер може зберігати інформацію, отриману в результаті запитів (так зване TTL - time to live), вказується в зонах доменів для кожного запису або в SOA одночасно для всіх записів, які не мають явно зазначеного TTL. Після закінчення TTL запис в кеші вважається недійсною і не використовується. Таким чином, при зміні зони будь-який користувач Internet гарантовано дізнається про це з часом, в сумі не перевищує TTL і період відновлення зони на вторинних серверах. Зазвичай це кілька годин.

Як відбувається реєстрація домену

У всіх організаціях-реєстраторах реєстрація домену відбувається приблизно однаково. Щоб зареєструвати домен, потрібно перевірити, чи вільний він, і скласти заявку. Її форма зазвичай доступна на www-сайті реєстратора. У заявці зазначаються координати заявника (приватної особи або компанії) і адреси серверів імен, на яких до моменту її подачі вже повинна існувати відповідна зона.

Звичайно потрібно не менше двох серверів (наприклад, один первинний і один вторинний), причому рекомендується використовувати сервери, з'єднані з Internet різними каналами. Сенс цієї вимоги в тому, щоб при будь-яких проблемах з одним з серверів (вихід з ладу каналу, непрацездатність комп'ютера і т. П.) Домен все одно був доступний. В цьому випадку пошта, спрямована на домен, просто деякий час полежить в черзі відправника, а не буде повернута з повідомленням про те, що даний домен не існує.

Після отримання правильно заповненої заявки реєстратор перевіряє доступність зон на зазначених серверах імен та правильність їх складання. Якщо все правильно, відбувається так зване делегування домену, т. Е. Реєстратор вносить в домен вищого рівня відповідний запис.

Автор: МИХАЙЛО Шойхер

Повернутися до повного списку статей про хостинг

наверх

наверх

Новости