CentOS 7
Sponsored Link

Dnsmasq : インストール
2016/08/31
 
小規模な内部ネットワーク向けの軽量な DNS フォワーダー/DHCPサーバーソフトウェア Dnsmasq のインストールと設定です。
[1] Dnsmasq をインストールします。
[root@dlp ~]#
yum -y install dnsmasq
[2] Dnsmasq の設定です。
[root@dlp ~]#
vi /etc/dnsmasq.conf
# 19行目:コメント解除 (ドメイン名の無いクエリは上位サーバーに問い合わせない)

domain-needed
# 21行目:コメント解除 (プライベートIPの逆引き要求は上位サーバーに問い合わせない)

bogus-priv
# 41行目:コメント解除 (resolv.confに記述のサーバーに上から順に問い合わせる)

strict-order
# 55行目:もし必要であれば追記

# 指定のドメインは指定のサーバーに問い合わせる

# 下例の場合は [server.education] ドメインは [10.0.0.10] のサーバーに問い合わせる

server=/server.education/10.0.0.10
# 123行目:コメント解除 (ホスト名に自動的にドメイン名を付加する)

expand-hosts
# 133行目:追記 (ドメイン名を定義)

domain=srv.world
[root@dlp ~]#
systemctl start dnsmasq

[root@dlp ~]#
systemctl enable dnsmasq

[3] IPアドレスとホスト名のエントリは /etc/hosts へ登録します。
以上の設定により、クライアントからの要求に対して、設定した内部ドメインは /etc/hosts を参照し、その他は上位のDNSサーバーに問い合わせて結果を返します。
[root@dlp ~]#
vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
# 設定するエントリを追記
10.0.0.30   dlp.srv.world dlp 

[root@dlp ~]#
systemctl restart dnsmasq

[4] Firewalld を有効にしている場合は、DNS サービスの許可が必要です。
[root@dlp ~]#
firewall-cmd --add-service=dns --permanent

success
[root@dlp ~]#
firewall-cmd --reload

success
[5] 内部ネットワーク内の任意のクライアントから名前解決可能か確認しておきます。
[root@desktop ~]#
yum -y install bind-utils
# 名前解決の参照先を Dnsmasq サーバーへ変更 (「ens3」は自身の環境に置き換え)

[root@desktop ~]#
nmcli c modify ens3 ipv4.dns 10.0.0.30

[root@desktop ~]#
nmcli c down ens3; nmcli c up ens3
[root@desktop ~]#
dig dlp.srv.world.


; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7_2.3 <<>> dlp.srv.world
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11613
;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;dlp.srv.world.                 IN      A

;; ANSWER SECTION:
dlp.srv.world.          0       IN      A       10.0.0.30

;; Query time: 2 msec
;; SERVER: 10.0.0.30#53(10.0.0.30)
;; WHEN: Wed Aug 31 17:22:51 JST 2016
;; MSG SIZE  rcvd: 47

[root@desktop ~]#
dig -x 10.0.0.30


; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7_2.3 <<>> -x 10.0.0.30
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61937
;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

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

;; ANSWER SECTION:
30.0.0.10.in-addr.arpa. 0       IN      PTR     dlp.srv.world.

;; Query time: 3 msec
;; SERVER: 10.0.0.30#53(10.0.0.30)
;; WHEN: Wed Aug 31 17:24:00 JST 2016
;; MSG SIZE  rcvd: 67
 
Tweet