Відмінності між версіями «4 Програми ДНС Лінукс»
Donserg (Обговорення • внесок) м (Захист на 4 Програми ДНС Лінукс встановлено ([edit=sysop] (безстроково) [move=sysop] (безстроково))) |
|||
Рядок 1: | Рядок 1: | ||
− | + | 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. | |
− | + | Консорціум 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. |
Версія за 17:26, 25 червня 2013
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. Консорціум 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.