0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

DNSサーバ(bind)を仮想マシンとして作成/#4:設定、named.conf

Posted at

bind設定サンプル(権威サーバ)

  • root:内部DNSのルートドメインのDNSとして動作させる場合は、rootドメインも定義する。
  • 権威:プライベートアドレスの名前解決をする権威DNSサーバとして動作させる。
  • 委任:自身が権威DNSサーバとして管理するゾーンと、別のDNSサーバに委任する(問合せする)ゾーンがある。このため、権威サーバではあるが再帰問合せを可とする(recursion yes;)

ファイル名規約(centos7)

ファイル名 内容
/etc/named.conf 設定ファイルルート

/etc/named/db.ゾーン名
/etc/named/re.x.y.z
/etc/named.conf でゾーン定義する場合
zone "ゾーン名" IN { file "../db.ゾーン名"; } ;
zone "z.y.z.in-addr.arpa" IN { file "../re.x.y.z";};
/etc/named/db.ゾーン名
/etc/named/re.z.y.x
正引き定義(NS,A)
逆引き(PTR)
/etc/named/named.conf.ゾーン名 /etc/named.conf で include する場合

ゾーン定義(named.conf)

必須事項

  • ドメイン名(*.vpnなど)を勝手な名前にするので、rootの権威DNSは自分にする。そのため、typeはmasterとし、hintにしない。
  • 委任を可とするため再帰問合せ可とする(recursion yes;)。

ローカルルール

  • 他に委任するゾーン(ex *.vpn)は、rootの定義ファイル内に "NSレコードとして" 記載する。
  • 自分が権威DNSとして管理するゾーンは、ゾーン定義ファイル(db.*)を作成し、named.confで参照宣言する。
  • @ IN SOA MNAME RNAME ()
    SOAレコードに記載する MNAME(ゾーンのNSのサーバ名)は、ns0.ゾーン名、とする。
  • 適当にすると、複数ゾーンで "同一MNAME:異IPアドレス" となる可能性があるため、ユニークとなるようにゾーン名を含める。
  • 委任先のDNSは、FQDNではなくIPアドレスで指定したい。他で定義されてFQDNを使わないため。
/etc/named.conf
options {
  listen-on port 53 { 192.168.0.0/16; 127.0.0.1; };
  listen-on-v6 port 53 { ::1; };
  directory       "/var/named";
  allow-query     { 192.168.0.0/16; 127.0.0.1; };
  version         "Unknown";
....
  recursion       yes;
  allow-recursion { 192.168.0.0/16; };
  forwarders      { 0.0.0.0; };
}

zone "."        { type master; file "/etc/named/db."; };
    | $TTL  24h
    | ; @ = "."
    | @ IN  SOA ns0.root. postmaster.root. (....)
    | .                      IN  NS  ns0.root.     # rootは自分
    | .                      IN  TXT "root-zone of vm-dns.hrsk"
    | ns0.root.              IN  A   192.168.0.121
    | ;;
    | vpn.                   IN  NS  ns0.vpn.      # サブドメイン"vpn."
    | ns0.vpn.               IN  A   192.168.0.102
    | ;;
    | osmc.                  IN  NS  ns0.osmc.     # サブドメイン"osmc."
    | ns0.osmc.              IN  A   192.168.0.102
    | ;; 
    | hrsk.                  IN  NS  ns0.hrsk.     # サブドメイン"hrsk."
    | ns0.hrsk.              IN  A   192.168.0.1
    |
zone "esxi"     { type master; file "/etc/named/db.esxi"; };
    | $TTL  24h
    | ; @ = "esxi"
    | @ IN  SOA ns0.esxi. postmaster.esxi. (....)
    |                        IN  NS  ns0.esxi.
    |                        IN  TXT "auth of esxi."
    | ns0                    IN  A   192.168.0.121
    | ;;
    | vm-dbsv                IN  A   192.168.0.126
    | vm-dmz                 IN  A   192.168.0.120

named.conf その他オプション

指定項目 指定値
listen-on port 53 { 192.168.0.0/16; 127.0.0.1; }; DNSクエリーをlistenするアドレス範囲とポート
allow-query { 192.168.0.0/16; 127.0.0.1; }; クエリ元を制限する
version "Unknown"; セキュリティのため bind のバーションは返答しない
recursion yes; FQDNを右から再帰問合せするか、自分の情報だけで回答するか
yes:再帰問合せする
no:自分の情報だけで回答する
allow-recursion { 192.168.0.0/16; }; 再帰問合せの受付元を制限
include "....." ; 指定ファイルを取り込む
zone "ゾーン名" IN {
type master;
file "FILE-NAME";
}
ゾーンを "FILE-NAME" の内容で定義する
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?