banner
云野阁

云野阁

闲云野鹤,八方逍遥

DNSサーバーの構築

サーバー側#

(1)オンラインで bind9 をインストールする

yum install -y bind bind-utils

(2)サービスを起動する

systemctl start named

(3)サービスの状態を確認する

systemctl status named

(4)サービスを自動起動に設定する

systemctl enable named

(5)named サービスの設定ファイルを変更し、DNS ログのパスを設定する

vi /etc/named.conf
-------------------named.conf-------------------
options {
        // すべてのネットワークインターフェースからのDNSリクエストを受け入れる
        listen-on port 53 { any; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        // アクセスを許可するIP範囲
        allow-query     { 10.10.0.0/16; };

# レイアウトの都合上、ここでは一部のヒント情報を省略
};
logging {
    //    channel default_debug {
    //            file "data/named.run";
    //            severity dynamic;
    //    };
        
        channel named_log {
                // ログファイルのパスを指定し、ログファイルのバージョン数制限を5つ、各ファイルの最大サイズを50mに設定
                file "/var/log/dns/named.log" versions 5 size 50m;
                // ログ記録の時間形式はISO 8601標準を採用
                print-time iso8601;
                // ログエントリのカテゴリを印刷
                print-category yes;
               // ログエントリの重大性を印刷
                print-severity yes;
                severity info;
        };
        // 複数のログ記録カテゴリを定義
        category default   { named_log; };
        category general   { named_log; };
        category config   { named_log; };
        category client   { named_log; };
        category network   { named_log; };
        category notify   { named_log; };
        category queries   { named_log; };
        category update   { named_log; };
        category query-errors  { named_log; };
        category resolver   { named_log; };
        category xfer-in   { named_log; };
        category xfer-out   { named_log; };
        category dnssec   { named_log; };
};
# レイアウトの都合上、ここでは一部のヒント情報を省略
-------------------named.conf-------------------

(6)DNS ゾーンを設定し、DNS サーバーの構築を完了する

vi /etc/named.rfc1912.zones
-------------------named.rfc1912.zones-------------------
// プライベート範囲を転送する必要がある場合は、
// optionsにdisable-empty-zone ".";を追加します
//

zone "localhost.localdomain" IN {
        type master;
        file "named.localhost";
        allow-update { none; };
};

zone "localhost" IN {
        type master;
        file "named.localhost";
        allow-update { none; };
};

zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};

zone "1.0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};

zone "0.in-addr.arpa" IN {
        type master;
        file "named.empty";
        allow-update { none; };
};
// カスタムドメインゾーンとDNSレコードのセット
zone "elk.com" IN {
        type master;
        file "/var/named/elk.com.zone";
        allow-update { none; };
};
-----------------------------------------------

(7)"elk.com" のゾーンデータファイルを作成し、DNS サーバーのドメイン名を「dns.elk.com」、クライアントのドメイン名を「test.elk.com」として定義する。

# "elk.com"のゾーンデータファイルを作成
vi /var/named/elk.com.zone
# DNSサーバーとクライアントのドメイン名を定義
-------------------named.rfc1912.zones-------------------
$TTL 1D
@       IN SOA  dns.elk.com. admin.elk.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@   IN  NS      dns.elk.com.
dns     IN      A   10.10.2.103
test    IN      A   10.10.2.113
-------------------------------------------------------

(8)ログサービスの権限を設定し、ファイアウォールを構成し、サービスを再起動して設定を有効にする

# ログを保存するディレクトリを作成し、権限を設定
mkdir /var/log/dns
chmod -R 777 /var/log/dns/
# dnsサービスのアクセスポリシーを設定し、正常にアクセスできるようにする
firewall-cmd --permanent --add-service=dns
# ファイアウォールポリシーを再読み込み
firewall-cmd --reload
# namedサービスを再起動し、設定を有効にする
 systemctl restart named

(9)DNS を「10.10.2.103」に変更し、ネットワークを再起動して有効にする。

# nmtuiを使用してネットワーク接続を管理
nmtui

「接続の編集」を選択し、Enter を押し、ネットワークインターフェース「ens32」を選択し、「接続の編集」画面で DNS サーバーを「10.10.2.103」に変更し、保存して終了。

保存して終了した後、ネットワークを再起動して DNS サーバーの設定を有効にする。

systemctl restart NetworkManager

(10)DNS サーバーが正しく設定されているか確認する。

ping www.baidu.com
ping dns.elk.com
ping test.elk.com

クライアント側#

DNS 設定を「10.10.2.103」に変更し、具体的な手順は《ステップ 1:仮想マシンプランニング》の「(9)」を参照。

ネットワークを再起動した後、DNS 設定が有効かどうか確認する。

ping www.baidu.com
ping dns.elk.com
ping test.elk.com
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。