BIND
| Розробник(и) | Internet Systems Consortium |
|---|---|
| Стабільний випуск | 10 1.0.0 (21 лютого 2013) |
| Операційна система | GNU/Linux, NetBSD, FreeBSD, OpenBSD, Mac OS X, Windows |
| Тип | DNS-сервер |
| Ліцензія | ISC license |
| Сайт | www.isc.org/software/bind |
BIND (Berkeley Internet Name Domain, до цього Berkeley Internet Name Daemon) — відкрита і найпоширеніша реалізація DNS-сервера, що забезпечує виконання перетворення DNS-імені в IP-адресу і навпаки. BIND підтримується організацією Internet Systems Consortium. 10 з 13 кореневих серверів DNS працюють на BIND, решта 3 працюють на NSD.
Історія [ред.]
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. Окремий інтерес представляє модуль накопичення статистики, який у поєднанні з додатковими надбудовами може віддавати статистику по протоколах HTTP (в XML-поданні) або SNMP.

