djbdns vs bind [closed]

Я новичок, который хочет узнать, как настроить DNS-сервер имен. Должен ли я использовать djbdns, BIND или что-то еще?

Текущие сетевые требования включают поддержку поддоменов, SSL и почтовый сервис, и все это при очень небольшом трафике. Мне нужно решение, которое когда-нибудь сможет масштабироваться до более тяжелого трафика и, возможно, более сложных требований (например, балансировки нагрузки). В то время я бы работал либо на Linux.

Я читал, что у BIND есть проблемы с безопасностью, если он не настроен должным образом, и что его настройка может быть сложной. Я также читал, что djbdns проще в настройке, безопаснее и выдерживает большие нагрузки. Аргументы в пользу djbdns кажутся правдоподобными, но у меня нет опыта, чтобы должным образом их оценить. Если BIND лучше, я был бы признателен за обсуждение этих утверждений для djbdns.

Спасибо.

20
задан 27 June 2009 в 19:05
11 ответов

Я работал с djbdns в прошлом и в настоящее время выполнял набор серверов BIND.

Самая большая проблема с djbdns лучше всего помещается путем, мой учитель первого класса поместил его в мой табель успеваемости: "не играет хорошо с другими". Это просто не ведет себя как ничто больше на поле Unix во всех видах очень маленьких путей, которые могут укусить Вас позже. Это использует синтаксис для зональных файлов, которые Вы не будете видеть больше нигде.

Самое большое преимущество djbdns состоит в том, что он был разработан с нуля с безопасностью как цель № 1.

Если бы Вы собирались настроить сервер DNS, выставить его Интернету и затем никогда не поддерживать, то это, djbdns был бы способ пойти.

В реальном мире большинство администраторов является более обеспеченным использованием пакетов BIND от поставщика ОС и исправления его быстро, когда существует обновление. Но выполнение его, chrooted является хорошей идеей и разделением Ваших авторитетных серверов DNS от Вашего рекурсивного сопоставителя серверы DNS, является хорошей идеей.

При нахождении документов для чего-то с DNS BIND будет включен, и djbdns вряд ли будет включен. Если Вы используете, роют, формат, который это возвращает, может быть вставлен в файл зоны BIND и работу. Это действует как любой нормальный демон Unix вместо чего-то с другой планеты.

Мы используем некоторые аппаратные подсистемы балансировки нагрузки, и загрузка балансируют наш рекурсивный сопоставитель серверы BIND; работает отлично. Просто удостоверьтесь, что пользователи получают тот же исходный IP, как они отправили свои запросы к и любой UDP и TCP, способная установка выравнивания нагрузки должна работать. При выполнении авторитетного DNS выравнивание нагрузки так же просто как наличие больше чем одного сервера и публикация всех их в whois информации; другие серверы DNS загрузят баланс разумно.

14
ответ дан 2 December 2019 в 20:07
  • 1
    Мне нравится думать о нем как будто djdns doesn' t работа, it' s Ваш отказ, если это делает, затем его DJ' s. –  Dave Cheney 29 June 2009 в 05:23
  • 2
    Целое обсуждение полезно, и выбирающий любой ответ кажется немного несправедливым к другим. Этот является самым близким к заключению I' ve достигнут меня: безотносительно их технологических различий BIND лучше поддерживается документацией и сообществом. Как другой отмеченный ответ, понимая это кажется вероятным для упрощения будущих взаимодействий DNS. Те преимущества кажутся более важными, чем любое преимущество djbdns предложения в простоте конфигурации. –  chernevik 29 June 2009 в 19:49

Для авторитетного сервиса, nsd.

Для рекурсивного, развязанного.

Оба являются маленькими (так, вероятно, имеют меньше дыр в системе безопасности, ожидающих, чтобы быть обнаруженным), активно сохраняемый, и поддерживайте все недавние вещи DNS (DNSSEC, IPv6, и т.д.).

Иначе BIND является хорошим программным обеспечением.

djbdns является индивидуальным проектом, несохраняемым в течение долгого времени, не более безопасный (автор просто говорит это так), и официальный сайт полон ошибок. (Теперь, я уверен, что получу много downvotes от djbboys, мой представитель был слишком высок для моего вкуса :-)

9
ответ дан 2 December 2019 в 20:07

Если это для себя, и если Вы хотите изучить, как DNS работает, я использовал бы djbdns.

Если Вы хотите понять, как все остальные делают DNS, и как поддерживать типичное развертывание предприятия, учиться, связывают.

Если Вашей целью является минимальное усилие и поддержка, и Вы довольно компетентны, djbdns имеет намного более низкую поддержку наверху.

Если Вы будете больше на стороне новичка забора, то у Вас, вероятно, будет более легкое время, добираясь, перевязывают и выполнение, но имеют в виду, что это, намного более вероятно, взорвется странными и дурацкими способами.

Если бы я уже не знал djbdns (и связывал), то я также изучил бы powerdns и maradns, но я сомневаюсь, что для крошечных установок это немного лучше, чем djbdns комплект.

Независимо, даже если Вы используете, связывают для рекламы Вашего DNS к Интернету, необходимо все еще выполнить dnscache (часть djbdns комплекта) работающий localhost для сопоставителя системы.

8
ответ дан 2 December 2019 в 20:07

Пропустите djbdns. Хотя djb является героем, он переносит высокомерие математика на программное обеспечение. То, что это не ведет себя как другое программное обеспечение относительно запуска/остановки его, могло бы быть хорошей демонстрацией умного метода руководящих демонов. Но Вы оказываетесь перед необходимостью вытаскивать документацию, если Вы не используете ее регулярно, потому что все так отличается. При установке его в системах, которые другие обслуживают также, необходимо будет записать им четкую документацию - который они должны будут считать в целом, чтобы сделать простые операции. Выполнение материала из init является милым, даже умным. Но это также неприятно, удивление, и нестандартно.

Кроме того, у меня были проблемы с djbdns порождение серьезных проблем из-за настойчивости только при уважении стандартов и не совместимости программного обеспечения. Поиск и устранение неисправностей этих проблем был большой пустой тратой времени, потому что он зависел от незначительных различий в пакетах DNS.

Также djbdns имеет странное поведение в определенных случаях, которые заставят людей, диагностирующих Ваш сервер DNS с инструментами кроме djb's (например, с nslookup) получать неожиданные результаты. Вы потратите впустую свое время, объясняя "на самом деле, я просто использую этот неясный сервер DNS, названный djbdns. Проблема состоит в том, что Ваши инструменты диагностики дают Вам странное сообщение, но оно работает хорошо. При рассмотрении этого захвата пакетов можно сказать. Это не связано с проблемой, которую мы имели несколько месяцев назад, где djbdns не взаимодействовал правильно с Вашим сервером DNS. И при этом это не связано с проблемой, которую мы имели несколько недель назад, где я был вне офиса, и моим товарищам по команде потребовался час для перезапуска сервера DNS".

Подобные проблемы с qmail все вокруг.

Существует некоторое образовательное значение в установке djbdns, если Вы задаете вопрос и имеете время для уничтожения. Можно также изучить много, просто читая веб-сайт djb.

Существует два набора проблем безопасности. Дыры в системе безопасности, которые предоставляют доступ взломщика к системе - djbdns почти определенно, не имеют ни одного из них. Несколько лет назад свяжите, имел довольно много смущающих, обнаруженных в скором времени, также выставляя плохой дизайн. Я ожидал бы, что по этому много лет, это было полностью переписано. Если Вы действительно хотите быть в безопасности в этом отношении, выполнить его под виртуальной машиной (например, Xen). Также рассмотрите при работе системы Linux с SELinux в целенаправленном режиме у Вас будет установка для, связывают и вероятно не обеспокоится одним для djbdns. Связывание + система SELinux потенциально более безопасно.

Другой проблемой является безопасность против отравления кэшем. Мое предположение - то, что djbdns был лучше, когда он был выпущен, и свяжите, вероятно, лучше теперь из-за большего внимания. Это - вероятно, причина Вашего слушания, которые связывают, небезопасно если "правильно настроенный". Необходимо, по крайней мере, исследовать и понять эту проблему. В процессе Вы, вероятно, узнаете, какие риски конфигурации существуют для обоих серверов DNS.

Поведение под большой нагрузкой является ерундой критерии большинства пользователей. Остерегайтесь производительности, используемой в качестве критерии для оценки программного обеспечения, которое редко является узким местом производительности. Вы не размещаете кэширующийся сервер DNS для огромной базы пользователей, где Вы могли бы получить запросы на значительном уровне. Вы выполняете авторитетный DNS для предоставления услуг, которые, вероятно, работают на той же системе. Эти сервисы являются тысячами времен, более дорогих, чем DNS. Ваша интернет-ссылка даже не могла бы быть достаточной для тяжелой загрузки сервера DNS, но если бы Вы получали такую большую нагрузку на сервисах, Вы обеспечиваете, DNS не был бы вероятным узким местом.

6
ответ дан 2 December 2019 в 20:07

Можно хотеть взглянуть на MaraDNS, осведомленный о безопасности сервер DNS.

  • Безопасный. MaraDNS имеет историю безопасности, столь же хорошую как или лучше, чем какой-либо другой сервер DNS. Например, MaraDNS всегда рандомизировал, с помощью безопасного генератора случайных чисел, идентификатора Запроса и исходного порта запросов DNS; и никогда не было уязвимо для "нового" приступа отравления кэшем.

  • Поддерживаемый. MaraDNS имеет долгую историю того, чтобы быть сохраняемым и обновленный. MaraDNS был первоначально создан в 2001. MaraDNS 1.0 был выпущен в 2002, и MaraDNS 1.2 был выпущен в декабре 2005. MaraDNS был экстенсивно протестирован, и с процессом SQA и с более чем четырьмя годами реального использования. MaraDNS продолжает полностью поддерживаться: новый выпуск был сделан 13 февраля 2009. Дедвуд, код, который станет частью MaraDNS 2.0, активно разрабатывается.

  • Простой в использовании. Для основной рекурсивной конфигурации нужен только единственный конфигурационный файл с тремя линиями. Для основной авторитетной конфигурации нужны только конфигурационный файл с четырьмя строками и короткий зональный файл. MaraDNS полностью документируется с обоими учебниками для начинающих и полным и актуальным справочником.

  • Маленький. MaraDNS хорошо подходит для встраиваемых приложений и других сред, где сервер должен использовать абсолютное минимальное количество возможных ресурсов. Двоичный файл MaraDNS меньше, чем двоичный файл любого другого в настоящее время сохраняемого рекурсивного сервера DNS.

  • Открытый исходный код. MaraDNS является полностью открытым исходным кодом, лицензия является лицензией BSD с двумя пунктами, которая почти идентична лицензии FreeBSD.

Посмотрите страницу maraDNS поддержки, где существует сравнение нескольких программного обеспечения сервера DNS, которое может помочь Вам выбрать.

5
ответ дан 2 December 2019 в 20:07

При выполнении DNS только для себя djbdns является лучшим пакетом программного обеспечения. Это был один из нескольких пакетов программного обеспечения, которые определили главную проблему безопасности DNS с прошлого года и были, создают/исправляют для фиксации его за годы до руки. Для кэширования DNS я устанавливаю dnscache (часть djbdns) на всех серверах, которые не работают как авторитетные серверы DNS. Это действительно работает лучше, чем BIND для большинства объектов, но данные сегодняшние аппаратные средства, дополнительный вес и более медленная скорость BIND являются надуманным вопросом.

Для опыта я изучил бы основы BIND, независимо от которого упаковывают Вас выбор работать.

Djbdns установлен быть очень легким администратору из командной строки. Все изменения в данных DNS сделаны как команды. В BIND Вы редактируете серию текстовых файлов.

Можно получить пакеты для обоих. Я просматриваю различие как IE по сравнению с другими браузерами. IE прибывает, встроил и работы для многих вещей и не делает этого, Вы изменяетесь от значения по умолчанию. Djbdns отличается и требует другого набора компромиссов. Для ISP, перемещающегося от BIND до djbdns, может быть немного хитрым, потому что BIND по умолчанию делает кэширование и обслуживание имени, где, поскольку djbdns разделяет это на две части. Это предпочтительное решение по обеспечению безопасности, но более твердо установить, столько установок BIND не беспокоится.

4
ответ дан 2 December 2019 в 20:07

Лично я сказал бы, что необходимо изучить основы BIND для справки, но что переходить на что-то еще сделает Вас более счастливым системным администратором для будущего :)

Большинство мест я работал в промышленности ISP, кажется, использует djbdns, она обеспечивает превосходные стандартные блоки и основы для разделения на уровни 'организованных' сервисов на - запись, что сценарии для генерации зональных файлов довольно тривиальны, означая, что можно хранить все данные DNS в SQL так или иначе. Это обрабатывает смешное количество запросов в секунду и безопасно для начальной загрузки.

Если необходимо масштабировать его, просто пойдите, посмотрели на http://haproxy.1wt.eu и выталкивают несколько авторитетных серверов позади этого! Я также настоятельно рекомендовал бы разделению сопоставители с авторитетных серверов в любой установке, которую Вы принимаете решение развернуть.

Другими вещами, которые стоит читать о, является MaraDNS и PowerDNS.

3
ответ дан 2 December 2019 в 20:07

Я, прежде всего, использую FreeBSD для подобных вещей и так как он прибывает пакеты с BIND, я никогда действительно приложил усилия для изучения чего-либо еще. Hoever, которые я нахожу BIND довольно легким настроить и так как он сохраняется в перспективе безопасности FreeBSD я только, должны отследить тот канал для любых проблем безопасности.

Таким образом, я предполагаю, что лучший выбор для Вас является попыткой они оба, и посмотрите, который комплект Вы больше всего, это - то, если Вы не используете ОС, которая прибывает связанная любым из них.

2
ответ дан 2 December 2019 в 20:07

Если Вы надеетесь узнавать о DNS, копии книги O'Reilly "DNS, и BIND" и последняя версия связывают установленный, вероятно, лучший способ пойти.

Это верно, что BIND имел больше проблем безопасности в свое время жизни. dnjdns не имел ни одного до прошлого года, но он имеет совсем другую архитектуру от BIND, и можно найти более трудным взять, если Вы не знакомы с тем, как система именования работает.

Если Вы просто надеетесь узнавать о том, как выполнить сервер DNS (в противоположность приобретению знаний о протоколах и таком), Вы были бы лучшими, чтобы просто выбрать один и погружение в. Я ожидаю, что Вы найдете, что двоичные пакеты для обоих в любом *отклоняют дистрибутив, который Вы выбираете. Однако существуют некоторые преимущества для компиляции из источника с программным обеспечением, которое Вы, возможно, должны восстановить, если существует уязвимость системы обеспечения безопасности, о которой объявляют.

Как с любым стоящим с Интернетом сервисом, некоторым здравым смыслом и прагматическими взглядами лучший способ пойти, независимо от того, какое программное обеспечение Вы используете. Если необходимо включить динамические обновления, удостоверьтесь, что они подписываются. Если Вы позволяете зональные передачи, ограничиваете, кто может выполнить их от Вашего разъединять и т.д.

2
ответ дан 2 December 2019 в 20:07
  • 1
    Я погрузился в с djbdns, быстро поразил некоторые незначительные проблемы установки и обнаружил там просто isn' t очень многочисленное сообщество, документирующее такие проблемы. Нет ничего как " DNS и BIND" для него. Даже если я закончу это препятствие, то каждая вещь, которую я мог бы хотеть сделать, более вероятно, будет иметь обсуждение решения BIND. Ли it' s технология лучше или нет, BIND, кажется, имеет лучшую поддержку. –  chernevik 27 June 2009 в 21:10
  • 2
    По-видимому, не настолько трудно, как Вы хотели бы. I' m пытающийся сделать работу и сделать лучший выбор я могу на ограниченном понимании, не исчерпывают потенциал какого-то конкретного инструмента. I' m благодарный за djbdns, и жемчуг, и lighttpd и Свободный BSD, и все другие материал с открытым исходным кодом I' m не в настоящее время использование. Ну, почти все. Но я don' t думают, что можно серьезно ожидать новичка к прочитайте руководство или Искать TFM, больше, чем я. You' ре, которое ясно инвестируют в djbdns и that' s большой. Если мое мнение раздражает Вас, я предполагаю, что можно надеяться на более умных новичков, или можно работать, чтобы помочь нам найти ответы. –  chernevik 3 July 2009 в 15:08

СВЯЗАТЬ.

Если Вы изучите, как настроить его (при чтении целого набора несколько утомительного связанного с DNS RFCs) затем, Вы можете легкий переключатель к другому серверу DNS в будущем (в любых целях). Я использую BIND в качестве основных и вторичных серверов везде на FreeBSD, Linux и даже на ноутбуке Vista (для VMware хосты NAT'ed).

Btw, это - своего рода забава считать источник BIND и обнаружить, как, например, классик функционирует как gethostbyname () или gethostbyaddr () работы.

2
ответ дан 2 December 2019 в 20:07

После того, как годы использования связывают, оно наконец рассветало на мне, что большинство моих серверов не должно выполнять своего собственного демона DNS вообще. Это не может относиться к Вам, но думать об этом: фактически каждый доменный регистратор в эти дни предлагает серверу Ваши записи DNS для Вас (обычно предоставление Вам некоторый веб-способ отредактировать Ваши записи DNS). Они обрабатывают обслуживание информации, управление вторичными устройствами, и т.д. Если Вы устраняете необходимость своего сервера для ответа на запросы DNS, все, что оставляют, чтобы сервер сделал поиски DNS. Для этого я указываю на свой/etc/resolv.conf на 4.2.2.1 и 4.2.2.2, которые являются Level3, "передает одному из узлов" серверы DNS и, кажется, довольно быстры и надежны.

Добавленная премия - то, что конфигурация брандмауэра для Вашего сервера больше не должна впускать DNS. Вам просто нужно к "установленному, связанному" правилу позволить запросам DNS Вашего сервера работать.

Хорошо, таким образом, Вы не спросили, необходимо ли было выполнить демона DNS, но это - вопрос, на который я ответил. Только, чтобы быть завершенными, если Вы находите, необходимо работать один, я рекомендую придерживаться с, связывают, потому что это таким образом наиболее часто используемое, Вы найдете много документации и справки, заставляющей это делать то, что Вы хотите.

2
ответ дан 2 December 2019 в 20:07
  • 1
    Кажется разумным, но кажется легче выяснить, как это работает первым хостингом его самостоятельно. –  chernevik 28 June 2009 в 03:13

Теги

Похожие вопросы