Для чого потрібна dns
- Для чого потрібна DNS?
Кількість комп'ютерів в Internet росло дуже швидко, і незабаром файл HOSTS. TXT став таким величезним, що його підтримка початку віднімати занадто багато часу і сил. Та до того ж і координатор Internet як такої перестав існувати. І ось на початку 80-х років була розроблена розподілена система DNS (Domain Name Service - служба доменних імен).
DNS - погляд зсередини
Доменне ім'я дуже схоже на шлях до файлу в файлової системі, тільки Новомосковскется воно в зворотну сторону і майданчиках не косими рисами (/ або \), а точками. У DNS, як і в файлової системі, є корінь - він позначається найправішій точкою, є відповідні каталогам домени і відповідні файлів комп'ютери.
Вузлами DNS служать так звані сервери імен (nameservers), іноді їх називають серверами DNS. Кожен сервер зберігає інформацію про декілька доменах. Зазвичай ця інформація знаходиться в файлах, які називають зонами. Строго кажучи, фізично у вигляді файлу зона може і не існувати, а наприклад, зберігатися в якийсь базі даних. Кожна зона відповідає одному домену.
Зазвичай для кожного домена зона розміщується на декількох серверах (перш за все з метою надійності). При цьому оригінальна копія зони зберігається на одному сервері, званому первинним. Решта сервери, на яких зберігається зона, називаються вторинними і автоматично отримують копію з первинного сервера. Щоб вторинні сервери "знали", коли треба оновлювати свою копію зони, в запису SOA є спеціальне поле serial (порядковий номер). При кожній зміні зони на первинному сервері необхідно збільшувати значення serial. Вторинні сервери час від часу (період задається теж в запису SOA) перевіряють serial зони на первинному сервері і при необхідності оновлюють свої копії.
DNS починається з так званих кореневих серверів. Зараз їх 13 штук, вони розташовані в США і зберігають зони для кореневого домену (домену "."). Далі йдуть домени першого рівня (top-level domains, TLD). Кожна країна має свій домен, відповідний її дволітерні коду ISO. Наприклад, доменУкаіни - ru, України - ua. Крім географічних доменів широко використовуються традиційні TLD, що залишилися з тих часів, коли Internet ще не була інтернаціональною мережею. Це домени: com - для комерційних організацій, net - для мережевих організацій, edu - для освітніх установ, org - для громадських (неприбуткових) організацій і mil - для військових установ США. Кореневі сервери зберігають інформацію про серверах імен для всіх доменів першого рівня.
Всередині доменів першого рівня теж може бути додатковий розподіл. Наприклад, географічні домени часто ділять далі за географічним принципом.
Реєстрацією нових доменів займаються спеціальні організації - реєстратори. Вони ведуть базу даних по всіх доменів, а також підтримують безпосередньо сервери імен для відповідних доменів.
Наприклад, реєстратором доменів в домені .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 можна зареєструвати практично будь-який домен.
Реєстрація деяких доменів абсолютно безкоштовна, наприклад у всіх географічних і інших доменах загального користування в ru. Але ось реєстрація доменів другого рівня коштує грошей, причому різні реєстратори встановлюють різні ціни.
Реєстрація в Internic коштує $ 35 за домен в рік, але заплатити треба відразу за два роки вперед (т. Е. $ 70). Реєстрація домену в РосНИИРОС в зоні .ru подорожче і коштує $ 100. Ця сума включає оплату права користування доменом протягом одного року, в подальшому доведеться платити по $ 50 в рік.
Зовсім необов'язково реєструвати домен самому. Більшість провайдерів Internet можуть за невелику плату взяти цю роботу на себе. Але не забудьте переконатися, що домен зареєстрований саме на вас, а не на провайдера, інакше можливі проблеми з перенесенням домену, якщо раптом ви захочете змінити провайдера.
Кешування запитів до DNS
У загальному випадку кожен запит до DNS вимагає послідовного проходження всього дерева, починаючи з кореневих серверів. Звичайно, це дуже неефективно, і, щоб уникнути безлічі запитів до всіх серверів в ланцюжку, сервери імен виконують ще одну функцію - кешування. При цьому користувач звертається із запитом до найближчого сервера імен (зазвичай до сервера провайдера або сервера імен у власній локальній мережі). Цей сервер вже самостійно виробляє "дозвіл" (resolving) запиту, т. Е. Відбувається при необхідності по дереву DNS і повертає користувачеві відповідь.
Час, протягом якого кешуючий сервер може зберігати інформацію, отриману в результаті запитів (так зване TTL - time to live), вказується в зонах доменів для кожного запису або в SOA одночасно для всіх записів, які не мають явно зазначеного TTL. Після закінчення TTL запис в кеші вважається недійсною і не використовується. Таким чином, при зміні зони будь-який користувач Internet гарантовано дізнається про це з часом, в сумі не перевищує TTL і період відновлення зони на вторинних серверах. Зазвичай це кілька годин.
Як відбувається реєстрація домену
Після отримання правильно заповненої заявки реєстратор перевіряє доступність зон на зазначених серверах імен та правильність їх складання. Якщо все правильно, відбувається так зване делегування домену, т. Е. Реєстратор вносить в домен вищого рівня відповідний запис.
dns. ДНС. dns-сервер. ДНС-сервер