DNSは、 Dの略語です。 omain N ame S IPとFQDNをマッピングするサービス( F ully Q ualified D omain N エイムズ)お互いに。そしてそれによって、DNSはIPを覚えやすくします。ネームサーバーは、DNSを実行するコンピューターです。
したがって、このチュートリアルでは、UbuntuにDNSをインストールして構成します。このチュートリアルでは、Ubuntuでネームサーバーを処理するために使用される最も一般的なプログラムの1つであるBIND( B の略語)を使用します。 erkley私 インターネットN アミンD aemon)。
UbuntuにDNSをインストールして構成する
インストールプロセスを開始する前に、次の3つのコマンドを実行して、システムが更新されていることを確認してください。
ステップ1-システムの更新
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade
ステップ2–DNSパッケージをインストールする
次のコマンドを使用します:
sudo apt-get install bind9
前のコマンドを実行すると、インストールする他のパッケージが提案されます。yを押して、それらのパッケージのダウンロードとインストールを確認します。

ステップ3–DNSユーティリティをインストールする
DNSの問題のトラブルシューティングとテストに大いに役立つもう1つの便利なパッケージは、次のコマンドを使用してインストールできるdnsutilsパッケージです。
sudo apt-get install dnsutils
すでにインストールされている場合があることに注意してください。
ステップ4–DNS構成
通常、DNS構成ファイルは/ etc/bindディレクトリに保存されています。 /etc/bind/named.confは、DNSオプションを含むマスター構成ファイルであり、編集する際は注意することを強くお勧めします。
ステップ5–NameServerの構成
最もよく使用されるデフォルトの構成は、サーバーをキャッシュサーバーとして使用することです。これは、DNSが名前クエリに対する回答を取得し、それをキャッシュして、ドメインが別の時間クエリされたときに回答を再度使用することを意味します。したがって、サーバーをキャッシングネームサーバーとして使用するには、次のいくつかの手順に従うことができます。
/etc/bind/named.conf.optionsを開いて、お気に入りのエディタで編集します。
sudo vi /etc/bind/named.conf.options
次のブロックを追加します。ここでは、GoogleのDNSを使用しています。
フォワーダー{
8.8.8.8;
};
ファイルは次のようになります:
新しい構成を有効にするには、DNSサービスを再起動する必要があります。
sudo systemctl restart bind9
クエリ時間をテストするために、dnsutilsパッケージによってインストールされるdigコマンドを使用できます。
dig google.com
前のコマンドを2回実行し、クエリ時間を確認します。出力は次のようになります。


コマンドを2回実行したときのクエリ時間はほぼゼロであることがわかります。
ステップ6–プライマリマスター
プライマリマスターサーバー構成の場合、DNSは、ホストに保存されているファイルからゾーンのデータを取得します。また、DNSはそのゾーンを制御します。ここで、「example.com」というドメインがあり、そのドメインのプライマリマスターになるようにDNSを構成するとします。
転送ゾーンファイル
ここフォワードゾーンでは、名前はIPにマップされます。
手順1./etc/bind/named.confファイルを開いて編集します。
sudo vi /etc/bind/named.conf
次の行が含まれ、コメントが付いていないことを確認してください。
include“ /etc/bind/named.conf.options”;
include“ /etc/bind/named.conf.local”;
include“ /etc/bind/named.conf.default-zones ”;
ファイルは次のようになります。

手順2./etc/bind/named.conf.localファイルを開いて編集し、DNSゾーンを追加します。
sudo vi /etc/bind/named.conf.local
次のブロックを追加します。
zone“ example.com” {
type master;
file“ /etc/bind/db.example.com”;
};
ファイルは次のようになります:

ステップ3.テンプレートファイルからゾーンファイルを作成します。
sudo cp /etc/bind/db.local /etc/bind/db.example.com
ステップ4.新しいサンプルゾーンファイルを開きます。
sudo vi /etc/bind/db.example.com
そして、次のように変更します:

ゾーンファイルに変更を加えるたびに、シリアル番号を増やす必要があることに注意してください。
手順5.DNSサービスを再起動して変更を適用します。
sudo systemctl restart bind9
リバースゾーンファイル
ここで、IPを名前にマップするには、リバースゾーンファイルを構成する必要があります。
手順1./etc/bind/named.conf.localファイルを編集します。
sudo vi /etc/bind/named.conf.local
次のブロックを追加します。
zone“ 10.0.2.in-addr.arpa” {
type master;
file“ /etc/bind/db.10”;
};
ここで、10.0.2はネットワークの最初の3オクテットです。
手順2.テンプレート1から/etc/bind/db.10ファイルを作成します。
sudo cp /etc/bind/db.127 /etc/bind/db.10
手順3./etc/bind/db.10ファイルを編集します。
sudo vi /etc/bind/db.10
そして、次のようになります:

手順4.DNSサービスを再起動して、変更を適用します。
ステップ7–構成ファイルの検証
これまでのすべての構成を実行した後、すべての構成が正しいことを確認する必要があります。
手順1.次のコマンドを実行して、エラーが返されるかどうかを確認します。
named-checkzone example.com /etc/bind/db.example.com named-checkzone 192.168.0.0/32 /etc/bind/db.10 named-checkconf /etc/bind/named.conf.local named-checkconf /etc/bind/named.conf
前のコマンドの出力は次のようになります。
シリアル番号が異なる場合があるので、慌てないでください。
最後に、UbuntuにDNSサーバーを正常にインストールして構成しました。楽しんでいただければ幸いです。ご不明な点がございましたら、コメントを残していただければ幸いです。