「Fitpc2i/bind9」の版間の差分
(ページの作成:「== インストール == <pre> $ sudo apt-get install bind9 </pre> == 設定 == /etc/bind ディレクトリに移動。 <pre> $ cd /etc/bind $ ls -l total 52 -rw-r--r--...」) |
(→設定) |
||
| (同じ利用者による、間の6版が非表示) | |||
| 8行目: | 8行目: | ||
<pre> | <pre> | ||
$ cd /etc/bind | $ cd /etc/bind | ||
| − | $ | + | </pre> |
| − | + | ||
| − | + | このディレクトリ /etc/bind を group "bind" で書き込み可能にする。そうしないとDDNSがpermission deniedでダイナミックにならない。 | |
| − | - | + | <pre> |
| − | - | + | $ sudo chmod g+w /etc/bind |
| − | + | </pre> | |
| − | + | apparmorがインストールされていたら、その設定ファイルも変更して bind が /etc/bind ディレクトリに書き込めるようにする。 | |
| − | + | <pre> | |
| − | + | $ cd /etc/apparmor.d/ | |
| − | + | $ sudo vi usr.sbin.named | |
| − | + | : | |
| − | + | /etc/bind/** rw, # <-- r を rw に書き換える | |
| − | + | : | |
| − | - | + | </pre> |
| − | + | ||
| + | /etc/bind/named.conf.options を編集. | ||
| + | <pre> | ||
| + | options { | ||
| + | directory "/var/cache/bind"; | ||
| + | |||
| + | forwarders { | ||
| + | 192.168.0.1; | ||
| + | }; | ||
| + | |||
| + | auth-nxdomain no; # conform to RFC1035 | ||
| + | listen-on-v6 { any; }; | ||
| + | }; | ||
| + | </pre> | ||
| + | ただし,192.168.0.1はブロードバンドルータ. | ||
| + | |||
| + | /etc/bind/named.conf.local を編集. | ||
| + | <pre> | ||
| + | zone "fukudat.com" { | ||
| + | type master; | ||
| + | file "/etc/bind/db.fukudat.com"; | ||
| + | allow-update { | ||
| + | 192.168.0.0/24; | ||
| + | 127.0.0.1; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | zone "0.168.192.in-addr.arpa" { | ||
| + | type master; | ||
| + | file "/etc/bind/db.0.168.192"; | ||
| + | allow-update { | ||
| + | 192.168.0.0/24; | ||
| + | 127.0.0.1; | ||
| + | }; | ||
| + | }; | ||
| + | </pre> | ||
| + | |||
| + | zone file "/etc/bind/db.fukudat.com" を以下のように作る。owner を bind.bind にする。 | ||
| + | <pre> | ||
| + | $ORIGIN fukudat.com. | ||
| + | $TTL 86400 ; 1 day | ||
| + | @ IN SOA ns.fukudat.com. root.fukudat.com. ( | ||
| + | 2018000002 ; Serial | ||
| + | 10800 ; Refresh | ||
| + | 1800 ; Retry | ||
| + | 4320000 ; Expire | ||
| + | 86400 ; Negative Cache TTL | ||
| + | ) | ||
| + | NS ns.fukudat.com. | ||
| + | MX 0 mail.fukudat.com. | ||
| + | $TTL 86400 | ||
| + | router A 192.168.0.1 | ||
| + | ns A 192.168.0.11 | ||
| + | fitpc2i A 192.168.0.11 | ||
| + | www A xxx.xxx.xxx.xxx | ||
| + | </pre> | ||
| + | |||
| + | zone file "db.0.168.192" を以下のように作る。owner を bind.bind にする。 | ||
| + | <pre> | ||
| + | $TTL 86400 ; 1 day | ||
| + | @ IN SOA ns.fukudat.com. root.fukudat.com. ( | ||
| + | 2018000001 ; serial | ||
| + | 10800 ; refresh (3 hours) | ||
| + | 1800 ; retry (30 minutes) | ||
| + | 4320000 ; expire (7 weeks 1 day) | ||
| + | 86400 ; minimum (1 day) | ||
| + | ) | ||
| + | IN NS ns.fukudat.com. | ||
| + | 1 IN PTR router.fukudat.com. | ||
| + | 11 IN PTR fitpc2i.fukudat.com. | ||
| + | </pre> | ||
| + | |||
| + | /etc/bind/named.conf.xxx を編集.(xxxはVPNでつながっているプライベートドメイン) | ||
| + | <pre> | ||
| + | zone "xxx.com" { | ||
| + | type forward; | ||
| + | forwarders { 9.0.4.1; 9.0.5.1; }; | ||
| + | }; | ||
| + | |||
| + | zone "9.in-addr.arpa" { | ||
| + | type forward; | ||
| + | forwarders { 9.0.4.1; 9.0.5.1; }; | ||
| + | }; | ||
| + | </pre> | ||
| + | VPNのネームサーバー(上記では9.0.4.1, 9.0.5.1)へのルーティングがあることを確認.なければ永続的な静的ルーティングを参照して作成. | ||
| + | |||
| + | 最後にサービスをリスタート. | ||
| + | <pre> | ||
| + | # /etc/init.d/bind9 restart | ||
| + | </pre> | ||
| + | |||
| + | == 管理 == | ||
| + | |||
| + | === コマンドでアドレスを追加する === | ||
| + | nsupdateコマンドを使う. | ||
| + | <pre> | ||
| + | # nsupdate | ||
| + | > update delete oldhost.fukudat.com A # oldhost.fukudat.comのAレコードを消去する | ||
| + | > update delete 31.0.168.192.in-addr.arpa. IN PTR # 192.168.0.31の逆引きレコードを消去する | ||
| + | > update add newhost.fukudat.com 86400 A 192.168.0.51 # newhost.fukudat.comのAレコードをアドレス192.168.0.51で作成する.TTLは1日(86400秒). | ||
| + | > update add 51.0.168.192.in-addr.arpa. 86400 IN PTR newhost.fukudat.com. # 192.168.0.51の逆引きレコードを作成する. | ||
| + | > send | ||
| + | </pre> | ||
| + | |||
| + | === ゾーンファイルを手動で書き換える === | ||
| + | 静的なアドレスを登録するときゾーンファイル (db.fukudat.com (順引きデータ), db.0.168.192 (逆引きファイル)) を直接書き換えたくなる.そうするならば,*.jnl ファイルに動的な変更の履歴が残っているので,これをフラッシュする必要がある. | ||
| + | <pre> | ||
| + | # rndc freeze | ||
| + | </pre> | ||
| + | そのうえでゾーンファイルを書き換える。 | ||
| + | <pre> | ||
| + | # /etc/init.d/bind9 stop | ||
| + | # vi /etc/bind/db.fukudat.com | ||
| + | ... 書き換え ... | ||
| + | </pre> | ||
| + | 動的なアップデートを再開して、bindを再起動する。 | ||
| + | <pre> | ||
| + | # rndc thaw | ||
| + | # /etc/init.d/bind9 restart | ||
</pre> | </pre> | ||
2018年8月31日 (金) 07:07時点における最新版
インストール
$ sudo apt-get install bind9
設定
/etc/bind ディレクトリに移動。
$ cd /etc/bind
このディレクトリ /etc/bind を group "bind" で書き込み可能にする。そうしないとDDNSがpermission deniedでダイナミックにならない。
$ sudo chmod g+w /etc/bind
apparmorがインストールされていたら、その設定ファイルも変更して bind が /etc/bind ディレクトリに書き込めるようにする。
$ cd /etc/apparmor.d/ $ sudo vi usr.sbin.named : /etc/bind/** rw, # <-- r を rw に書き換える :
/etc/bind/named.conf.options を編集.
options {
directory "/var/cache/bind";
forwarders {
192.168.0.1;
};
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
ただし,192.168.0.1はブロードバンドルータ.
/etc/bind/named.conf.local を編集.
zone "fukudat.com" {
type master;
file "/etc/bind/db.fukudat.com";
allow-update {
192.168.0.0/24;
127.0.0.1;
};
};
zone "0.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.0.168.192";
allow-update {
192.168.0.0/24;
127.0.0.1;
};
};
zone file "/etc/bind/db.fukudat.com" を以下のように作る。owner を bind.bind にする。
$ORIGIN fukudat.com. $TTL 86400 ; 1 day @ IN SOA ns.fukudat.com. root.fukudat.com. ( 2018000002 ; Serial 10800 ; Refresh 1800 ; Retry 4320000 ; Expire 86400 ; Negative Cache TTL ) NS ns.fukudat.com. MX 0 mail.fukudat.com. $TTL 86400 router A 192.168.0.1 ns A 192.168.0.11 fitpc2i A 192.168.0.11 www A xxx.xxx.xxx.xxx
zone file "db.0.168.192" を以下のように作る。owner を bind.bind にする。
$TTL 86400 ; 1 day @ IN SOA ns.fukudat.com. root.fukudat.com. ( 2018000001 ; serial 10800 ; refresh (3 hours) 1800 ; retry (30 minutes) 4320000 ; expire (7 weeks 1 day) 86400 ; minimum (1 day) ) IN NS ns.fukudat.com. 1 IN PTR router.fukudat.com. 11 IN PTR fitpc2i.fukudat.com.
/etc/bind/named.conf.xxx を編集.(xxxはVPNでつながっているプライベートドメイン)
zone "xxx.com" {
type forward;
forwarders { 9.0.4.1; 9.0.5.1; };
};
zone "9.in-addr.arpa" {
type forward;
forwarders { 9.0.4.1; 9.0.5.1; };
};
VPNのネームサーバー(上記では9.0.4.1, 9.0.5.1)へのルーティングがあることを確認.なければ永続的な静的ルーティングを参照して作成.
最後にサービスをリスタート.
# /etc/init.d/bind9 restart
管理
コマンドでアドレスを追加する
nsupdateコマンドを使う.
# nsupdate > update delete oldhost.fukudat.com A # oldhost.fukudat.comのAレコードを消去する > update delete 31.0.168.192.in-addr.arpa. IN PTR # 192.168.0.31の逆引きレコードを消去する > update add newhost.fukudat.com 86400 A 192.168.0.51 # newhost.fukudat.comのAレコードをアドレス192.168.0.51で作成する.TTLは1日(86400秒). > update add 51.0.168.192.in-addr.arpa. 86400 IN PTR newhost.fukudat.com. # 192.168.0.51の逆引きレコードを作成する. > send
ゾーンファイルを手動で書き換える
静的なアドレスを登録するときゾーンファイル (db.fukudat.com (順引きデータ), db.0.168.192 (逆引きファイル)) を直接書き換えたくなる.そうするならば,*.jnl ファイルに動的な変更の履歴が残っているので,これをフラッシュする必要がある.
# rndc freeze
そのうえでゾーンファイルを書き換える。
# /etc/init.d/bind9 stop # vi /etc/bind/db.fukudat.com ... 書き換え ...
動的なアップデートを再開して、bindを再起動する。
# rndc thaw # /etc/init.d/bind9 restart