VMware仮想環境下でAnsible動作検証環境を構築しました。
今回は、zone設定追加の手順と、設定追加用Playbookを作成したのでメモしておきます。
前回、BINDインストール・起動確認までの記事はこちらから
あわせて読みたい


【Ansible】仮想CentOS7環境でBIND(DNS)Playbookでインストールと動作確認
VMware仮想環境においてAnsible Playbookを利用してBIND(DNS)のインストールを実施したので構築方法をメモします。 前回、Dockerコンテナ間でAnsibleを動作した際の記...
目次
「Ansible」DNSゾーン設定追加Playbook作成と動作確認
今回の構成は前回の構成に引き続き特に変わったところはありません。
[root@Ansible_test dns]# tree
.
|- config_files
- 140.168.192.in-addr.arpa.rev
- named.conf
- test-network.local
|- hosts
|- playbook
- dns_install.yml
「DNS」ゾーン追加設定に使用するPlaybook作成
前回のPlaybookでは、BINDのインストールからの設計をしていましたが、今回はゾーンの追加設定なので以下のような設計にしています。
[root@Ansible_test dns]# cat playbook/dns_zone_add.yml
- hosts: dns
become: yes
tasks:
- name: copy named.conf
copy:
src: /etc/ansible/roles/dns/config_files/named.conf
dest: /etc/named.conf
owner: root
group: named
mode: 0640
- name: copy zone file
copy:
src: /etc/ansible/roles/dns/config_files/test-network.local
dest: /var/named/test-network.local
owner: root
group: named
mode: 0640
- name: copy reverse zone file
copy:
src: /etc/ansible/roles/dns/config_files/140.168.192.in-addr.arpa.rev
dest: /var/named/140.168.192.in-addr.arpa.rev
owner: root
group: named
mode: 0640
- name: start_and_enable_named-chroot
service:
name: named-chroot
state: restarted
enabled: yes
今回、ゾーンの追加設定を実施するので、最後に「named-chroot」の再起動を実施させて新規追加の設定を読み込みます。
「正引き」ゾーンファイルの設定追加
以下では「test.test-network.local」を追加します。
[root@Ansible_test dns]# cat config_files/test-network.local
$TTL 3600
@ IN SOA dns.test-network.local. root.test-network.local. (
2020011202 ; serial
3600 ; refresh 1hr
900 ; retry 15min
604800 ; expire 1w
86400 ; min 24hr
)
IN NS dns.test-network.local.
dns IN A 192.168.140.101
ansible IN A 192.168.140.100
test IN A 192.168.140.102
「逆引き」ゾーンファイルの設定追加
逆引きも上記と同じく以下で設定を追加します。
[root@Ansible_test dns]# cat config_files/140.168.192.in-addr.arpa.rev
$TTL 3600
@ IN SOA dns.test-network.local. root.test-network.local. (
2020011202 ; serial
3600 ; refresh 1hr
900 ; retry 15min
604800 ; expire 1w
86400 ; min 24hr
)
IN NS dns.test-network.local.
100 IN PTR ansible.test-network.local.
101 IN PTR dns.test-network.local.
102 IN PTR test.test-network.local.
ゾーン追加設定用Playbook実行
正引き、逆引きゾーンファイル変更後、Playbookを実行します。
[root@Ansible_test dns]# ansible-playbook -i hosts playbook/dns_zone_add.yml PLAY [dns] ************************************************************************************************************************************************* TASK [Gathering Facts] ************************************************************************************************************************************* ok: [192.168.140.101] TASK [copy named.conf] ************************************************************************************************************************************* ok: [192.168.140.101] TASK [copy zone file] ************************************************************************************************************************************** changed: [192.168.140.101] TASK [copy reverse zone file] ****************************************************************************************************************************** changed: [192.168.140.101] TASK [start_and_enable_named-chroot] *********************************************************************************************************************** changed: [192.168.140.101] PLAY RECAP ************************************************************************************************************************************************* 192.168.140.101 : ok=5 changed=3 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
正引き・逆引きゾーンファイルが「changed」となり、named-chrootが再起動されたことが確認できます。
新規で設定が追加されたことを確認
最後にそれぞれ、新規で名前解決ができることを確認します。
正引き
[root@Ansible_test dns]# nslookup test.test-network.local 192.168.140.101 Server: 192.168.140.101 Address: 192.168.140.101#53 Name: test.test-network.local Address: 192.168.140.102
逆引き
[root@Ansible_test dns]# nslookup 192.168.140.102 192.168.140.101 102.140.168.192.in-addr.arpa name = test.test-network.local.
DNSゾーンファイル更新Playbookの設計は以上となります。
ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。

コメント