BINDの概要
BIND(バインド)は、Berkeley Internet Name Domainの略で、世界中でもっとも多く利用されているDNSサーバです。BINDは、カリフォルニア大学バークレー校で1980代に開発され、現在は、ISC(Internet Systems Consortium)という非営利団体によって開発が続けられています。
DNS(ドメインネームシステム)は、Internetにおける名前解決の重要な役割を果たす技術であるが、実際にその機能を提供しているソフトウェアの1つがBINDです。
また、DNSはInternet以外でも、社内などのIntranetでも複数コンピューターをネットワークに接続・管理するためには欠かせない技術です。また何らかのネットワークサービスを構築・提供する際も、システムにDNSサーバが存在することは必然的になっています。
BINDは、セキュリティの問題が度々指摘されてきました。これはBINDが開発された時代背景に関連しています。BINDが開発された時代にはInternetは現在ほどセキュリティに気を使わなくてもいい時代でした。時代が流れるに連れてInternetを利用する人口が増えていき、悪意あるユーザによるさまざまなセキュリティ問題が現れてきました。その度にBINDはBINDの持つセキュリティ・ホールに対しての対処を行ってきました。しかし、BIND設計自体が1980年代に作られたものであることから、セキュリティ問題に対応するパッチにより継ぎ接ぎだらけの状態でした。そこで、最新のBIND9は、以前のコードから一新され、フルスクラッチでゼロから書き直されました。
BIND(バインド)の現在の最新バージョン(GA)は、9.11.24、9.12.4-P2、9.14.12、9.16.6です。(2020年10月現在)
BINDの特長
BIND(バインド)は、次のような特長があります。
- 世界でもっとも普及しているDNSサーバソフトウェア
- 圧倒的事例数による信頼性
- バージョンアップによる強固なセキュリティ
- DNS管理に必要な機能を網羅
- 商用化および標準規格の制定に利用しやすいライセンス
BIND以外にもDNS機能を提供するソフトウェアは存在しますが、BINDを使用してDNS機能を提供しているサーバが殆どのため、他のソフトウェアの名前をあまり聞かないというのが現実です。しかし、他にも多数存在しています。下記が、BIND以外のDNSソフトウェアの一部になります。
- Djbdns
Qmail, daemontoolなどを開発した ダニエル・バーンスタイン氏によるDNSソフトウェアの実装 - NSD / Unbound
オランダのNLnet Labs社によるDNSソフトウェアの実装 - Microsoft DNS
Microsoft Windows serverに組み込まれたDNSソフトウェアの実装
BINDの動作環境
ISCでは多くのオペレーションシステムとアーキテクチャで定期的にテストが行われていますが、開発リソース不足のため、一部の環境に対してはベストエフォートベースでの提供になっています。
- 定期的にテストされているプラットフォーム
下記のプラットフォームは、定期的にテストが行われており、完全にサポートされています(2019年2月現在、BIND 9.15)
- Debian 8、9、10
- Ubuntu 16.04、18.04
- Fedora 28、29
- Red Hat Enterprise Linux / CentOS 6、7
- FreeBDS 11.x
- OpenBSD 6.2、6.3
- ベストエフォート
下記のプラットフォームでは動作することは確認されていますが、Windows 2012 R2 以外は定期的にテストされていません。バグが残っているなどの制約があります。
- Windows Server 2012 R2, 2016 / x64
- Windows 10 / x64
- macOS 10.12以上
- Solaris 11
- FreeBSD 10.x, 12.0以上
- OpenBSD 6.4以上
- NetBSD
- OpenBSD 6.4以上
- 以下のLinuxディストリビューションは各ベンダーによりまだサポートされています。
- Ubuntu 14.04, 18.10以上
- Gentoo
- Arch Linux
- Alpine Linux
- OpenWRT/LEDE 17.01以上
- その他のCPUアーキテクチャ(mips、mipsel、sparc など)
- サポートされないプラットフォーム
下記のプラットフォームでは動作しません。
- 最新のOpenSSL 1.0.2 ではないプラットフォーム
- Windows 10 / x86
- Windows Server 2012 及びそれ以前
- Solaris 10 及びそれ以前
- IPv6 Advanced Socket API (RFC 3542) をサポートしないプラットフォーム
- atomic operations (compiler または library) をサポートしないプラットフォーム
- NPTL (Native POSIX Thread Library)の無いLinux
BINDのライセンス
BINDはMozilla Public License, version 2.0で提供されているソフトウェアです。ユーザはそのソフトウェアの使用や頒布、修正、派生版の頒布をすることに制限を受けません。