DNSサーバー構築(BIND)

最終更新日: 2017.01.23

<<トップページ <<新着情報 <<リンク集 <<サイト内検索 <<Scientific Linuxで自宅サーバー構築 <<Fedoraで自宅サーバー構築

■概要

DNSサーバー(BIND)はcentossrv.comというドメイン名からIPアドレスを返したり、IPアドレスからドメイン名を返すサーバー。
ここでは、内部でサーバーにアクセスするときにIPアドレスではなく、centossrv.comでアクセスできるようにする。⇒内部向けDNSサーバー
また、外部からサーバーにアクセスするときの自ドメイン名からIPアドレスへの変換(名前解決)を行なうようにする。⇒外部向けDNSサーバー
外部向けDNSサーバー設定により、自宅サーバーが稼動中にも係わらず、ダイナミックDNSサービス側が保守やトラブル等によりサービス停止したことによりドメイン名でサーバーにアクセスできなくなるということがなくなる。

※非固定IPアドレス環境の場合はサブドメイン取得済であること
※固定IPアドレス環境の場合は独自ドメイン取得済であること
※外部向けDNSサーバーは固定IPアドレス環境の場合のみ
※centossrv.comは当サイトの例なので、各自で置き換えること!


■BINDインストール

[root@centos ~]# yum -y install bind bind-chroot ← bind,bind-chrootインストール

■BIND設定

(1)chroot化
【CentOS6,5の場合】
[root@centos ~]# vi bind-chroot-admin ← bind-chroot-adminスクリプト作成
#!/bin/sh

# bind-chroot install check
rpm -q bind-chroot > /dev/null 2>&1
[ $? -ne 0 ] && echo bind-chroot not install && exit 1

# bind-chroot enabled
sed -i '/^ROOTDIR=/d' /etc/sysconfig/named
echo ROOTDIR=/var/named/chroot >> /etc/sysconfig/named

# file copy
filelist=`mktemp`
rpm -ql bind|grep ^/etc >> ${filelist}
rpm -ql bind|grep ^/var >> ${filelist}
for file in `cat ${filelist}`
do
  # directory make
  if [ -d ${file} ]; then
      DIRNAME=/var/named/chroot${file}
      [ ! -d ${DIRNAME} ] && mkdir -p ${DIRNAME}
  fi
  # file copy
  if [ -f ${file} ]; then
      DIRNAME=/var/named/chroot`dirname ${file}`
      [ ! -d ${DIRNAME} ] && mkdir -p ${DIRNAME}
      /bin/cp -a ${file} ${DIRNAME}
  fi
done
rm -f ${filelist}

chown named:named /var/named/chroot/var/named/data
chmod 770 /var/named/chroot/var/named/data
chown named:named /var/named/chroot/var/named/dynamic

exit

[root@centos ~]# sh bind-chroot-admin ← bind-chroot-adminスクリプト実行

(2)BIND設定
[root@centos ~]# vi /etc/named.conf ← BIND設定ファイル編集【CentOS7の場合】
[root@centos ~]# vi /var/named/chroot/etc/named.conf ← BIND設定ファイル編集【CentOS6,5の場合】
options {
        #listen-on port 53 { 127.0.0.1; }; ← 行頭に#を追加してコメントアウト
        #listen-on-v6 port 53 { ::1; }; ← 行頭に#を追加してコメントアウト
        version         "unknown"; ← bindのバージョン情報の非表示化
        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";
        allow-query     { localhost; localnets; }; ← 変更(サーバー及び、サーバーと同じネットワーク内のホストからの問合せのみ許可)
        recursion yes;
        
        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";
        forwarders{
                192.168.1.1; ← ルーター経由接続環境の場合はルーターのIPアドレスを指定※
                XXX.XXX.XXX.XXX; ← PPPoE接続環境の場合はプロバイダから通知されたDNSサーバー(プライマリ)のIPアドレスを指定※
                XXX.XXX.XXX.XXX; ← PPPoE接続環境の場合はプロバイダから通知されたDNSサーバー(セカンダリ)のIPアドレスを指定※
        };
        追加(ここまで)
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
        category lame-servers { null; }; ← 追加(error (connection refused) resolvingというエラーログの出力抑止)
};

追加(ここから)
view "internal" {
        match-clients { localnets; };
        match-destinations { localnets; };
追加(ここまで)

zone "." IN {
        type hint;
        file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

追加(ここから)
        include "/etc/named/named.centossrv.com.zone";
};
追加(ここまで)

最終行へ追加(ここから)※固定IPアドレス環境の場合のみ
view "external" {
        match-clients { any; };
        match-destinations { any; };
        recursion no;
        include "/etc/named/named.centossrv.com.zone.wan";
};
最終行へ追加(ここまで)

[root@centos ~]# vi /etc/named/named.centossrv.com.zone ← centossrv.comの内部向けゾーン定義ファイル作成【CentOS7の場合】
[root@centos ~]# vi /var/named/chroot/etc/named/named.centossrv.com.zone ← centossrv.comの内部向けゾーン定義ファイル作成【CentOS6,5の場合】
zone "centossrv.com" {
        type master;
        file "centossrv.com.db";
};
zone "1.168.192.in-addr.arpa" {
        type master;
        file "1.168.192.in-addr.arpa.db";
};

[root@centos ~]# vi /etc/named/named.centossrv.com.zone.wan ← centossrv.comの外部向けゾーン定義ファイル作成※固定IPアドレス環境の場合のみ【CentOS7の場合】
[root@centos ~]# vi /var/named/chroot/etc/named/named.centossrv.com.zone.wan ← centossrv.comの外部向けゾーン定義ファイル作成※固定IPアドレス環境の場合のみ【CentOS6,5の場合】
zone "centossrv.com" {
        type master;
        file "centossrv.com.db.wan";
        allow-query { any; };
};

[root@centos ~]# echo OPTIONS="-4" >> /etc/sysconfig/named  ← IPv4のみ有効にする(error (network unreachable) resolvingというエラーログの出力抑止)
※forwardersには、このDNSサーバーのキャッシュで名前解決ができなかった場合に問合せにいくDNSサーバー(ルーターまたは、プロバイダから通知されたDNSサーバー)を指定する

(3)ルートゾーン最新化
ルートゾーンは世界に13台しかないトップレベルドメインを管理するDNSサーバーのIPアドレスを管理しているファイルで、めったに更新されることはないが、念のため最新化しておく。
[root@centos ~]# dig . ns @198.41.0.4 +bufsize=1024 > /var/named/chroot/var/named/named.ca ← ルートゾーン(named.ca)最新化

(4)ルートゾーン自動更新設定
1ヶ月に一度、ルートゾーンが最新かチェックし、更新されていればルートゾーンの最新化及び、BINDの再起動を自動的に行うようにする。
※ルートゾーンが更新されていた場合のみ、新旧ルートゾーン情報及び、新旧ルートゾーンの差分情報をroot宛にメールする
[root@centos ~]# vi named.root_update ← ルートゾーン最新化スクリプト作成
#!/bin/bash

new=`mktemp`
errors=`mktemp`

dig . ns @198.41.0.4 +bufsize=1024 > $new 2> $errors

if [ $? -eq 0 ]; then
    sort_new=`mktemp`
    sort_old=`mktemp`
    diff_out=`mktemp`
    sort $new > $sort_new
    sort /var/named/chroot/var/named/named.ca > $sort_old
    diff --ignore-matching-lines=^\; $sort_new $sort_old > $diff_out
    if [ $? -ne 0 ]; then
        (
         echo '-------------------- old named.root --------------------'
         cat /var/named/chroot/var/named/named.ca
         echo
         echo '-------------------- new named.root --------------------'
         cat $new
         echo '---------------------- difference ----------------------'
         cat $diff_out
        ) | mail -s 'named.root updated' root
        cp -f $new /var/named/chroot/var/named/named.ca
        chown named. /var/named/chroot/var/named/named.ca
        chmod 644 /var/named/chroot/var/named/named.ca
        which systemctl > /dev/null 2>&1
        if [ $? -eq 0 ]; then
            systemctl restart named-chroot > /dev/null
        else
            /etc/rc.d/init.d/named restart > /dev/null
        fi
    fi
    rm -f $sort_new $sort_old $diff_out
else
    cat $errors | mail -s 'named.root update check error' root
fi
rm -f $new $errors

[root@centos ~]# chmod 700 named.root_update ← ルートゾーン最新化スクリプトへ実行権限付加

[root@centos ~]# mv named.root_update /etc/cron.monthly/ ← ルートゾーン最新化スクリプトを毎月自動実行されるディレクトリへ移動

(5)内部向け正引きゾーンデータベース(ドメイン名⇒IPアドレス)作成
[root@centos ~]# vi /var/named/centossrv.com.db ← 正引きゾーンデータベース作成【CentOS7の場合】
[root@centos ~]# vi /var/named/chroot/var/named/centossrv.com.db ← 正引きゾーンデータベース作成【CentOS6,5の場合】
$TTL    86400
@       IN      SOA     centossrv.com.  root.centossrv.com.(
                                      2011062001 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN NS    centossrv.com.
        IN MX 10 centossrv.com.
@       IN A     192.168.1.3 ← サーバーのプライベートIPアドレスを指定(centossrv.com用)
*       IN A     192.168.1.3 ← サーバーのプライベートIPアドレスを指定(*.centossrv.com用)

(6)内部向け逆引きゾーンデータベース(IPアドレス⇒ドメイン名)作成
[root@centos ~]# vi /var/named/1.168.192.in-addr.arpa.db ← 逆引きゾーンデータベース作成【CentOS7の場合】
[root@centos ~]# vi /var/named/chroot/var/named/1.168.192.in-addr.arpa.db ← 逆引きゾーンデータベース作成【CentOS6,5の場合】
$TTL    86400
@       IN      SOA     centossrv.com.  root.centossrv.com.(
                                      2011062001 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
              IN      NS    centossrv.com.
3             IN      PTR   centossrv.com. ← サーバーIPアドレス最下位部(192.168.1.3)とドメイン名を指定

(7)外部向け正引きゾーンデータベース(ドメイン名⇒IPアドレス)作成※固定IPアドレス環境の場合のみ
[root@centos ~]# vi /var/named/centossrv.com.db.wan ← 外部向け正引きゾーンデータベース作成【CentOS7の場合】
[root@centos ~]# vi /var/named/chroot/var/named/centossrv.com.db.wan ← 外部向け正引きゾーンデータベース作成【CentOS6,5の場合】
$TTL    86400
@       IN      SOA     ns1.centossrv.com.  root.centossrv.com.(
                                      2011062001 ; Serial
                                      7200       ; Refresh
                                      7200       ; Retry
                                      2419200    ; Expire
                                      86400 )    ; Minimum
        IN NS    ns1.centossrv.com. ← ネームサーバー名
        IN MX 10 centossrv.com. ← MXホスト名(メールサーバーを構築する場合のみ)
ns1     IN A     XXX.XXX.XXX.XXX ← サーバーのグローバルIPアドレスを指定(ns1.centossrv.com用)
@       IN A     XXX.XXX.XXX.XXX ← サーバーのグローバルIPアドレスを指定(centossrv.com用)
www     IN A     XXX.XXX.XXX.XXX ← サーバーのグローバルIPアドレスを指定(www.centossrv.com用)
ftp     IN A     XXX.XXX.XXX.XXX ← サーバーのグローバルIPアドレスを指定(ftp.centossrv.com用)
mail    IN A     XXX.XXX.XXX.XXX ← サーバーのグローバルIPアドレスを指定(mail.centossrv.com用)
centossrv.com. IN TXT "v=spf1 ip4:XXX.XXX.XXX.XXX ~all" ← サーバーのグローバルIPアドレスを指定(メールサーバーを構築する場合のみ)
※ゾーン情報変更時は、Serial行を年月日通番2桁(YYYYMMDDXX)のようにして、必ず変更前よりも大きい数値に変更すること(例:変更前が2005011001なら、変更後は2005011002にする)。これにより、後述するセカンダリ側へのゾーン情報の変更が正しく行われるようになる

■BIND起動

(1)BIND起動
[root@centos ~]# systemctl start named-chroot ← BIND起動※CentOS7の場合

[root@centos ~]# /etc/rc.d/init.d/named start ← BIND起動※CentOS6,5の場合

[root@centos ~]# systemctl enable named-chroot ← BIND自動起動設定※CentOS7の場合

[root@centos ~]# chkconfig named on ← BIND自動起動設定※CentOS6,5の場合

(2)UDPの53番ポートとTCPの53番ポートをオープンする
ルーターの設定で、UDPの53番ポートとTCPの53番ポートへのアクセスをサーバーに転送するようにする

※iptablesでファイアウォールを構築している場合はこちらを参照


■問合せ先DNSサーバーをLinuxサーバーに変更

(1)サーバー自身の問合せ先DNSサーバーを自分自身に変更
[root@centos ~]# sed -i 's/DNS1=.*/DNS1=127.0.0.1/g' /etc/sysconfig/network-scripts/ifcfg-eth0
 ← Linuxサーバー自身を問合せ先DNSサーバーとする

[root@centos ~]# systemctl restart network ← DNSサーバー変更反映※CentOS7の場合
[root@centos ~]# /etc/rc.d/init.d/network restart ← DNSサーバー変更反映※CentOS6,5の場合

(2)問合せ先DNSサーバーをLinuxサーバーに変更
ルーターのDHCP設定でDNSサーバーのIPアドレスをLinuxサーバーのIPアドレスに変更する

(3)問合せ先DNSサーバー変更反映
Linuxサーバー⇒クライアントの順に再起動し、問合せ先DNSサーバーの変更を反映させる

■BIND確認

(1)BIND確認(クライアントがWindowsの場合)
C:>nslookup ← nslookup起動
Default Server:  centossrv.com
Address:  192.168.1.3

> centossrv.com ← Linuxサーバーの正引きテスト
Server:  centossrv.com
Address:  192.168.1.3

Name:    centossrv.com
Address:  192.168.1.3 ← IPアドレスが返ってきた

> 192.168.1.3 ← Linuxサーバーの逆引きテスト
Server:  centossrv.com
Address:  192.168.1.3

Name:    centossrv.com ← ドメイン名が返ってきた
Address:  192.168.1.3

> www.isc.org ← 外部ドメインの正引きテスト
Server:  centossrv.com
Address:  192.168.1.3

Non-authoritative answer:
Name:    www.isc.org
Address:  149.20.64.42 ← IPアドレスが返ってきた

> 149.20.64.42 ← 外部ドメインの逆引きテスト
Server:  centossrv.com
Address:  192.168.1.3

Name:    external.isc.org ← ホスト名が返ってきた
Address:  149.20.64.42

> exit ← nslookup停止

C:>

(2)BIND確認(クライアントがLinuxの場合)
[root@centos ~]# dig centossrv.com ← Linuxサーバーの正引きテスト

; <<>> DiG 9.2.3 <<>> centossrv.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59712
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;centossrv.com.               IN      A

;; ANSWER SECTION:
centossrv.com.        86400   IN      A       192.168.1.3 ← IPアドレスが返ってきた

;; AUTHORITY SECTION:
centossrv.com.        86400   IN      NS      centossrv.com.

;; Query time: 8 msec
;; SERVER: 192.168.1.3#53(192.168.1.3)
;; WHEN: Mon Oct  4 17:39:31 2004
;; MSG SIZE  rcvd: 63

[root@centos ~]# dig -x 192.168.1.3 ← Linuxサーバーの逆引きテスト

; <<>> DiG 9.2.3 <<>> -x 192.168.1.3
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14938
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;1.1.168.192.in-addr.arpa.      IN      PTR

;; ANSWER SECTION:
1.1.168.192.in-addr.arpa. 86400 IN      PTR     centossrv.com. ← ドメイン名が返ってきた

;; AUTHORITY SECTION:
1.168.192.in-addr.arpa. 86400   IN      NS      centossrv.com.

;; ADDITIONAL SECTION:
centossrv.com.        86400   IN      A       192.168.1.3

;; Query time: 8 msec
;; SERVER: 192.168.1.3#53(192.168.1.3)
;; WHEN: Mon Oct  4 17:39:39 2004
;; MSG SIZE  rcvd: 101

[root@centos ~]# dig www.isc.org ← 外部ドメインの正引きテスト

; <<>> DiG 9.7.2-P2-RedHat-9.7.2-2.P2.fc14 <<>> www.isc.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32477
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 6

;; QUESTION SECTION:
;www.isc.org.                   IN      A

;; ANSWER SECTION:
www.isc.org.            600     IN      A       149.20.64.42 ← IPアドレスが返ってきた

;; AUTHORITY SECTION:
isc.org.                42570   IN      NS      ns.isc.afilias-nst.info.
isc.org.                42570   IN      NS      sfba.sns-pb.isc.org.
isc.org.                42570   IN      NS      ams.sns-pb.isc.org.
isc.org.                42570   IN      NS      ord.sns-pb.isc.org.

;; ADDITIONAL SECTION:
ams.sns-pb.isc.org.     42570   IN      A       199.6.1.30
ams.sns-pb.isc.org.     42570   IN      AAAA    2001:500:60::30
ord.sns-pb.isc.org.     42570   IN      A       199.6.0.30
ord.sns-pb.isc.org.     42570   IN      AAAA    2001:500:71::30
sfba.sns-pb.isc.org.    42570   IN      A       149.20.64.3
sfba.sns-pb.isc.org.    42570   IN      AAAA    2001:4f8:0:2::19

;; Query time: 181 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Nov  8 17:47:58 2010
;; MSG SIZE  rcvd: 276

[root@centos ~]# dig -x 149.20.64.42 ← 外部ドメインの逆引きテスト

; <<>> DiG 9.7.2-P2-RedHat-9.7.2-2.P2.fc14 <<>> -x 149.20.64.42
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20611
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 6

;; QUESTION SECTION:
;42.64.20.149.in-addr.arpa.     IN      PTR

;; ANSWER SECTION:
42.64.20.149.in-addr.arpa. 3537 IN      PTR     external.isc.org. ← ホスト名が返ってきた

;; AUTHORITY SECTION:
64.20.149.in-addr.arpa. 3526    IN      NS      sfba.sns-pb.isc.org.
64.20.149.in-addr.arpa. 3526    IN      NS      ord.sns-pb.isc.org.
64.20.149.in-addr.arpa. 3526    IN      NS      ams.sns-pb.isc.org.

;; ADDITIONAL SECTION:
ams.sns-pb.isc.org.     42519   IN      A       199.6.1.30
ams.sns-pb.isc.org.     42519   IN      AAAA    2001:500:60::30
ord.sns-pb.isc.org.     42519   IN      A       199.6.0.30
ord.sns-pb.isc.org.     42519   IN      AAAA    2001:500:71::30
sfba.sns-pb.isc.org.    42519   IN      A       149.20.64.3
sfba.sns-pb.isc.org.    42519   IN      AAAA    2001:4f8:0:2::19

;; Query time: 3 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Nov  8 17:48:49 2010
;; MSG SIZE  rcvd: 267

■プライマリネームサーバー変更※固定IPアドレス環境の場合のみ

centossrv.comのプライマリネームサーバーをレジストラのDNSサーバーから自宅DNSサーバーに変更する。
VALUE DOMAINで独自ドメインを取得した場合のプライマリネームサーバーの変更手順を以下に示す。
その他のレジストラで独自ドメインを取得した場合は各レジストラのWebサイトで確認すること

(1)ユーザ登録時のユーザIDとパスワードでログインする。

(2)「ドメイン操作」⇒「ネームサーバーの変更」⇒「このドメインでネームサーバーを作成」で、「ネームサーバー名」はデフォルト(ns1.centossrv.com)のまま、「ネームサーバーのIPアドレス」に現在のグローバルIPアドレス(確認くんで「現在接続している場所(現IP)」からコピー)を入力して「追加」ボタンを押下し、ネームサーバーを追加する。

(3)「ドメイン操作」⇒「ネームサーバーの変更」でネームサーバー 1〜5をクリアし、「ネームサーバー 1」に"ns1.centossrv.com"と入力して「保存する」ボタンを押下する。

※なお、プライマリネームサーバー変更が反映されるまで24〜48時間程度掛かる

■プライマリネームサーバー確認※固定IPアドレス環境の場合のみ

※レジストラでのプライマリネームサーバー変更後24〜48時間程度経過後に行うこと

Free Monitoring Test Toolsの「Select Test Type」欄で「NS records lookup」を選択、「Enter Test Target」欄にドメイン名(例:centossrv.com)を入力して「Perform Test」ボタンを押下する。

以下のような結果が表示されればOK
NS records lookup

Domain name tested:	centossrv.com
Test performed from:	New York, NY
Test performed at:	2017-01-23 12:28:05 (GMT +00:00)
Known NS records:	
ns1.centossrv.com	XXX.XXX.XXX.XXX
 ← ネームサーバーが自宅DNSサーバーになっていること
 ← サーバーのグローバルIPアドレスになっていること
Hostname test results

■セカンダリネームサーバー登録※固定IPアドレス環境の場合のみ

セカンダリネームサーバーはプライマリネームサーバーのゾーン定義ファイルをコピーして、プライマリネームサーバーと同じようにcentossrv.comからグローバルIPアドレスへの変換を行なってくれるサーバーで、プライマリネームサーバーへの負荷分散が行なえる。
ここでは、無料でセカンダリネームサーバーを請け負ってくれるマイハマネットのサービスを利用する。

(1)セカンダリネームサーバー申し込み
マイハマネットでユーザ登録し、登録時のメールアドレス宛にきたメールに従い、プライマリネームサーバー情報として自宅DNSサーバーの情報を登録する。
※なお、ユーザ登録時に指定するメールアドレスは、登録するドメイン名のメールアドレス(例:webmaster@centossrv.com)でなければならないため、先にメールサーバーを構築しておく

(2)セカンダリネームサーバー設定
[root@centos ~]# vi /etc/named/named.centossrv.com.zone.wan ← 外部向けゾーン定義ファイル編集※CentOS7の場合
[root@centos ~]# vi /var/named/chroot/etc/named/named.centossrv.com.zone.wan ← 外部向けゾーン定義ファイル編集※CentOS6,5の場合
zone "centossrv.com" {
        type master;
        file "centossrv.com.db.wan";
        allow-query { any; };
        allow-transfer {
                160.16.54.90; ← このゾーン情報の転送先として160.16.54.90(ns1.maihama-net.comのIPアドレス)を追加
                153.120.38.37; ← このゾーン情報の転送先として153.120.38.37(ns3.maihama-net.comのIPアドレス)を追加
        };
        notify yes; ← このゾーン情報変更時は即座に上記セカンダリへ反映させる
};

[root@centos ~]# vi /var/named/centossrv.com.db.wan ← 外部向け正引きゾーンデータベース編集※CentOS7の場合
[root@centos ~]# vi /var/named/chroot/var/named/centossrv.com.db.wan ← 外部向け正引きゾーンデータベース編集※CentOS6,5の場合
$TTL    86400
@       IN      SOA     ns1.centossrv.com.  root.centossrv.com.(
                                      2011062002 ; Serial ← 下2桁の通番をカウントアップする
                                      7200       ; Refresh
                                      7200       ; Retry
                                      2419200    ; Expire
                                      86400 )    ; Minimum
        IN NS    ns1.centossrv.com.
        IN NS    ns1.maihama-net.com. ← セカンダリネームサーバーとしてns1.maihama-net.comを追加
        IN NS    ns3.maihama-net.com. ← セカンダリネームサーバーとしてns3.maihama-net.comを追加
        IN MX 10 centossrv.com.
ns1     IN A     XXX.XXX.XXX.XXX
@       IN A     XXX.XXX.XXX.XXX
www     IN A     XXX.XXX.XXX.XXX
ftp     IN A     XXX.XXX.XXX.XXX
mail    IN A     XXX.XXX.XXX.XXX
centossrv.com. IN TXT "v=spf1 a mx ~all"

[root@centos ~]# systemctl reload named-chroot ← BIND設定反映※CentOS7の場合
[root@centos ~]# /etc/rc.d/init.d/named reload ← BIND設定反映※CentOS6,5の場合

(3)レジストラへセカンダリネームサーバー登録
VALUE DOMAINで独自ドメインを取得した場合、「■プライマリネームサーバーの変更」を参考にcentossrv.comのセカンダリネームサーバーをレジストラに登録する。
その他のレジストラで独自ドメインを取得した場合は各レジストラのWebサイトで確認すること

■セカンダリネームサーバー確認※固定IPアドレス環境の場合のみ

(1)セカンダリネームサーバーでの正引き確認
[root@centos ~]# dig @160.16.54.90 centossrv.com ← セカンダリネームサーバー(ns1.maihama-net.com)で正引きできるか確認

; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> @160.16.54.90 centossrv.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27648
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 4
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;centossrv.com.                 IN      A

;; ANSWER SECTION:
centossrv.com.          86400   IN      A       XXX.XXX.XXX.XXX ← サーバーのグローバルIPアドレスが返ってきた

;; AUTHORITY SECTION:
centossrv.com.          86400   IN      NS      ns1.centossrv.com.
centossrv.com.          86400   IN      NS      ns3.maihama-net.com.
centossrv.com.          86400   IN      NS      ns1.maihama-net.com.

;; ADDITIONAL SECTION:
ns1.centossrv.com.      86400   IN      A       XXX.XXX.XXX.XXX

;; Query time: 31 msec
;; SERVER: 160.16.54.90#53(160.16.54.90)
;; WHEN: 水 12月 10 12:23:40 JST 2014
;; MSG SIZE  rcvd: 172

[root@centos ~]# dig @153.120.38.37 centossrv.com ← セカンダリネームサーバー(ns3.maihama-net.com)で正引きできるか確認

; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> @153.120.38.37 centossrv.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43913
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 4
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;centossrv.com.                 IN      A

;; ANSWER SECTION:
centossrv.com.          86400   IN      A       XXX.XXX.XXX.XXX ← サーバーのグローバルIPアドレスが返ってきた

;; AUTHORITY SECTION:
centossrv.com.          86400   IN      NS      ns3.maihama-net.com.
centossrv.com.          86400   IN      NS      ns1.centossrv.com.
centossrv.com.          86400   IN      NS      ns1.maihama-net.com.

;; ADDITIONAL SECTION:
ns1.centossrv.com.      86400   IN      A       XXX.XXX.XXX.XXX
ns1.maihama-net.com.    7200    IN      A       160.16.54.90
ns3.maihama-net.com.    7200    IN      A       153.120.38.37

;; Query time: 117 msec
;; SERVER: 153.120.38.37#53(153.120.38.37)
;; WHEN: 水 12月 10 12:24:05 JST 2014
;; MSG SIZE  rcvd: 172


(2)セカンダリネームサーバー情報確認
※レジストラでのセカンダリネームサーバー登録後24〜48時間程度経過後に行うこと

Free Monitoring Test Toolsの「Select Test Type」欄で「NS records lookup」を選択、「Enter Test Target」欄にドメイン名(例:centossrv.com)を入力して「Perform Test」ボタンを押下する。

以下のような結果が表示されればOK
NS records lookup

Domain name tested:	centossrv.com
Test performed from:	New York, NY
Test performed at:	2017-01-23 12:28:05 (GMT +00:00)
Known NS records:	
ns1.maihama-net.com [XXX.XXX.XXX.XXX]
ns3.maihama-net.com [XXX.XXX.XXX.XXX]
 ← セカンダリネームサーバーが表示されていること
 ← セカンダリネームサーバーのIPアドレスがあっていること
ns1.centossrv.com	XXX.XXX.XXX.XXX
Hostname test results



▲このページのトップへ戻る

LPIロゴ Copyright© 2005-2017 fallenangels, All rights reserved.
ご自由にリンクしてください(連絡は不要です)
本ページへのご意見・ご要望、誤字・脱字・リンク切れ等のご連絡はこちらからお願いします