BIND

BIND (Berkeley Internet Name Domain, до цього Berkeley Internet Name Daemon) — універсальний каркас для побудови елементів інтернет-інфраструктури, таких як сервери DNS і DHCP; відкрита і найпоширеніша реалізація DNS-сервера, що забезпечує виконання перетворення DNS-імені в IP-адресу і навпаки. BIND підтримується організацією Internet Systems Consortium. 10 з 13 кореневих серверів DNS працюють на BIND, решта 3 працюють на NSD.

BIND
Тип DNS-сервер
Розробник Internet Systems Consortium
Стабільний випуск 10 1.2.0 (17 квітня 2014 (2014-04-17))
Репозиторій gitlab.isc.org/isc-projects/bind9.git
Операційна система GNU/Linux, NetBSD, FreeBSD, OpenBSD, Mac OS X, Windows
Мова програмування C
Ліцензія Ліцензія ISC
Вебсайт www.isc.org/software/bind

Історія

BIND був створений студентами на початку 1980-х на грант, виданий DARPA і вперше був випущений у BSD 4.3.

У версіях до 9 було виявлено чимало серйозних проблем з безпекою.

Версія 9 була переписана заново компанією Nominum , реліз був випущений у вересні 2000 року.

Ранні версії BIND зберігали інформацію тільки в текстових файлах зон. Починаючи з версії 9.4, як сховище можна використовувати LDAP, Berkeley DB, PostgreSQL, MySQL і ODBC.

BIND 10

Консорціум ISC представив стабільний реліз BIND 10 у лютому 2013, після чотирьох років розробки і через 13 років з моменту випуску BIND 9. BIND 10 має кардинально перероблену внутрішню архітектуру: на відміну від ранішої моделі реалізації всієї доступної функціональності в одному серверному процесі, в BIND 10 здійснений перехід до розділення функцій по окремим взаємопов'язаним процесам, кожен з яких реалізує свій сервіс. Поділ за різними процесам дозволив раціонально використовувати ресурси багатоядерних систем, розширив можливості масштабування, забезпечив ізоляцію окремих функцій і підвищив надійність.

Ключовою ланкою BIND 10 є процес msgq, він використовується для організації обміну повідомленнями між модулями. Функції авторитетного DNS-сервера виконує модуль auth, а функціональність DHCP забезпечується модулями dhcp4 і dhcp6. Модулі auth, dhcp4 і dhcp6 для збільшення масштабованості і балансування навантаження можуть запускатися в декількох екземплярах, наприклад, для кожного CPU на сервері може бути запущена окрема копія модуля, а запити на мережевий порт можуть рівномірно розподілятися між процесами. Для обслуговування вхідних і вихідних AXFR-запитів (трансфер зон цілком) представлені окремі сервіси xfrin і xfrout. Функції динамічного DNS-сервера виконує модуль ddns, а управління зонами делеговані модулю zonemgr.

Для організації віддаленого управління DNS-сервером підготовлений модуль cmdctl, поверх якого підготовлено кілька надбудов для управління конфігурацією, таких як утиліта bindctl, веб-інтерфейс WebTool, GUI-інтерфейс GuiTool і утиліта для забезпечення сумісності з конфігуратором BIND9. Для розбору і зберігання конфігурації задіяний модуль cfgmgr. Для управління сервером і зміни конфігурації може використовуватися RESTful-інтерфейс, що працює поверх HTTPS. Окремий інтерес представляє модуль накопичення статистики, який у поєднанні з додатковими надбудовами може віддавати статистику по протоколах HTTPXML-поданні) або SNMP.

17 квітня 2014 консорціум ISC випустив BIND 10 1.2.0. Випуск примітний завершенням стадії розвитку проекту під орудою консорціуму ISC і передачею проекту співтовариству, що має на меті перехід до відкритішої і незалежної моделі розробки. Повідомляється, що у консорціуму ISC немає ресурсів для одночасного розвитку двох альтернативних проектів — BIND 9 і BIND 10, тому ISC продовжить розробку ширше використовуваного BIND 9, а BIND 10 передасть в руки співтовариства.

Для уникнення плутанини з BIND 9, створюваний силами спільноти проект буде поширюватися під новим ім'ям Bundy. Релізів BIND 10 більше випускатися не буде, замість них будуть представлені випуски Bundy. Весь тягар з розвитку та супроводження кодової бази передається зацікавленим особам зі спільноти та інших компаній, офіційно ISC в розробці більше брати участь не буде. Код проекту буде перенесений на GitHub.

Очікується, що розширення кола розробників, що працюють над Bundy і вивчають цей код, призведе до прискорення процесу виявлення та виправлення помилок, а відкритіший процес розвитку Bundy дасть можливість самостійно розвивати необхідні функції, необхідність наявності яких може бути неочевидна при централізованій координації розробки. Розробка DHCP-сервера зі складу BIND 10 винесено в окремий субпроект Kea, котрий розвивається як відокремлений DHCP-сервер на базі технологій BIND 10. При цьому, напрацювання Kea також можуть входити до складу релізів Bundy.

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.