vCenter向けDNSサーバ構築手順 (CentOS 8.3編)

スポンサーリンク

vCenterはNTPサーバとDNSサーバと併用する事を前提としています。手っ取り早くvCenterを検証したい方向けに、CentOS 8.2でDNSサーバを構築する方法をまとめます。

DNSサーバ(bind)の構築

bindをインストールします。bind-utilsは必須ではないですが、nslookupコマンドやdigコマンドなどをデバッグで使うためにインストールします。

chroot環境配下でbindを起動するbind-chrootというツールもあります。このページは手っ取り早くDNSサーバを構築する事を目的にしてますので、bind-chrootの説明は省略します。

dnf install bind bind-utils

named.confを編集します。以下に設定例を紹介します。forwarderは自身で名前解決できない名前を問い合わせるDNSサーバを指定します。環境に応じて適宜変更ください。

# vi /etc/named.conf
options {
        listen-on port 53 { 0.0.0.0/0; };
        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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { 0.0.0.0/0; };

        recursion yes;

        pid-file "/run/named/named.pid";

        forwarders {
                203.XXX.XX.XXX;
                220.XXX.XX.XXX;
        };
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "example01.com" IN {
  type master;
  file "example01.com.zone";
};

zone "168.192.in-addr.arpa" IN {
  type master;
  file "example01.com.zone.rev";
};

正引きファイルを編集します。NSレコードはDNSサーバ自身のIPアドレスを指定するよう、適宜変更ください。

# vi /var/named/example01.com.zone
$TTL    1800
@       IN SOA  ns.gokatei.go. root.example01.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
                IN NS   ns.example01.com.
@               IN A    192.168.1.20
ns              IN A    192.168.1.20
vcenter01       IN A    192.168.1.191
vcenter02       IN A    192.168.1.192
vcenter03       IN A    192.168.1.193
vcenter04       IN A    192.168.1.194
vcenter05       IN A    192.168.1.195

逆引きファイルを編集します。NSレコードはDNSサーバ自身のIPアドレスを指定するよう、適宜変更ください。

# vi /var/named/example01.com.zone.rev 
$TTL    1800
@       IN      SOA     ns.example01.com root.example01.com (
        2021040100  ;Serial
        10800   ;Refresh 3 hours
        3600    ;Retry 1 hour
        86400   ;Expire 1 day
        3600)   ;Minimum 24 hours
        IN      A       192.168.1.20
        IN      NS      ns.example01.com.
20.1    IN      PTR     ns.example01.com.
191.1   IN      PTR     vcenter01.example01.com.
192.1   IN      PTR     vcenter02.example01.com.
193.1   IN      PTR     vcenter03.example01.com.
194.1   IN      PTR     vcenter04.example01.com.
195.1   IN      PTR     vcenter05.example01.com.

DNSサーバを起動します。

systemctl enable named.service --now

digコマンドで正引きできる事を確認します。ANSWER SECTIONを見て想定通りのIPアドレスが記載されている事を確認します。

[root@centos20 ~]# dig A vcenter01.example01.com @127.0.0.1

; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8_3.1 <<>> A vcenter01.example01.com @127.0.0.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41432
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 1ebd89da6b336ac836ed13176063172e2626773aed60c327 (good)
;; QUESTION SECTION:
;vcenter01.example01.com. IN  A

;; ANSWER SECTION:
vcenter01.example01.com. 1800 IN  A 192.168.1.191

;; AUTHORITY SECTION:
example01.com.    1800  IN  NS  ns.example01.com.

;; ADDITIONAL SECTION:
ns.example01.com. 1800  IN  A 192.168.1.20

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: 火  3月 30 21:18:54 JST 2021
;; MSG SIZE  rcvd: 129

digコマンドで逆引きできる事を確認します。ANSWER SECTIONを見て想定通りのFQDNが記載されている事を確認します。

[root@centos20 ~]# dig -x 192.168.1.191 @127.0.0.1

; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8_3.1 <<>> -x 192.168.1.191 @127.0.0.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15118
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: c79698da1fdffe817b587e74606317e4ca812ae2d17a0f0a (good)
;; QUESTION SECTION:
;191.1.168.192.in-addr.arpa.  IN  PTR

;; ANSWER SECTION:
191.1.168.192.in-addr.arpa. 1800 IN PTR vcenter01.example01.com.

;; AUTHORITY SECTION:
168.192.in-addr.arpa. 1800  IN  NS  ns.example01.com.

;; ADDITIONAL SECTION:
ns.example01.com. 1800  IN  A 192.168.1.20

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: 火  3月 30 21:21:56 JST 2021
;; MSG SIZE  rcvd: 153

firewalldの接続許可

環境によって設定方法は異なりますが、デフォルト設定のfirewalldならば、以下の設定でDNSが使用するudp53を許可する事ができます。

firewall-cmd --add-port=53/udp --zone=external --permanent
firewall-cmd --reload

udp53が確かに許可されている事を確認します。

[root@centos20 ~]# firewall-cmd --list-all --zone=external

external
  target: default
  icmp-block-inversion: no
  interfaces: 
  sources: 
  services: ssh
  ports: 123/udp 53/udp
  protocols: 
  masquerade: yes
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules:
タイトルとURLをコピーしました