BIND ソースコード コンパイル
ソースからBINDをコンパイルしてプライベートなDNS作る。
環境:
CentOS6.7 Final
64bit
bind9.10
ソースコードの取得
Downloads | Internet Systems Consortium
ソースコードの展開
tar xvfz bind9.10.tar.gz
コンフィグ(独自のOpenSSL導入済み)
./configure –enable-threads –with-openssl=/usr/local/ssl
makeする。
make
あとはインストール
make install
これでbindは
/usr/local/sbin
にインストールされる。
yumで自動インストールされる時と違い
サービスコマンド・設定ファイル・フォルダは一切設定されないので
自分で設定する必要がある。
めんどくさいので省く。
namedコマンドで起動、psでプロセス調べてkillが簡易的。
/etc/named.confの例
options { listen-on port 53 { 192.168.1.11; 127.0.0.1; }; //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"; pid-file "/var/run/named/named.pid"; allow-query { localnets; example_net;}; allow-transfer { none;}; allow-query-cache { localnets; lab-localnet;}; allow-recursion { localnets; example_net;}; recursion yes; notify no; max-transfer-time-in 60; transfer-format many-answers; transfers-in 10; transfers-per-ns 2; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; acl "example_net"{ 192.168.0.0/16; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; //include zone define files include "/etc/example_net.def"; //include "/etc/named.rfc1912.zones"; include "/etc/named.root.key";
インクルードファイル例
zone "example.net" IN { type master; file "/etc/named.zones/example.net.zones"; allow-query{any;}; }; zone "1.168.192.in-addr.arpa" IN { type master; file "/etc/named.zones/1.168.192.zones"; allow-query{any;}; };
ゾーンファイル例
逆引き例:
$ORIGIN 1.168.192.in-addr.arpa. $TTL 3600 @ IN SOA ns1.okami.uchiolab. root.okami.uchiolab. ( 2015111101; serial 3600 ; refresh (1 hour) 1200 ; retry (20 min.) 1209600 ; expire (2 weeks) 900 ; minimum (15 min.) ) IN NS ns1.okami.uchiolab. 11 IN PTR okami.uchiolab.
正引き例:
$ORIGIN example.net. $TTL 3600; 1 hour @ IN SOA ns1.example.net. root.example.net. ( 2015111101;serial 3600;refresh 1 hour 1200;retry 20 min 1209600;expire 2 weeks 900; minimum 15 min ) IN NS ns1 IN NS ns2 IN MX 10 mail @ IN TXT “v=spf1 mx ~all” ; SPF record @ IN A 192.168.1.11 ns1 IN A 192.168.1.11 ns2 IN A 192.168.1.11 mail IN A 192.168.1.11 www IN CNAME example.net