*** BINDって? [#qaefa724]
- インターネットの世界にこれが無かったら・・・。っていう程に大切でありなくてはならないもの。~
いえいえBINDが大切なのでは無くて、DNS(Domain Name Server)がなかったらってことです。~
いつも家でブラウザを立ち上げて http://www.yahoo.co.jp ってやるでしょ? これってどこかで~
www.yahoo.co.jp → 210.81.3.xxx(グローバルIP) を指しているわけ。~
COLOR(RED){※210.81.3.xxx が、常に www.yahoo.co.jp を指しているわけではありませんので気つけて。}
- なので、http://210.81.3.xxx とコマンドを打ち込んでも問題はないが数字の羅列より、~
文字列の方が人間は格段に覚えやすいでしょ? 「文字列→アドレス」に変換することを''正引き''っていうの。~
こういう一連のことを裏でやってくれるのがDNSってこと。
: 結構IT業界でもDNS?なにって知らない人が多い | [[実用 BIND 9で作るDNSサーバ>http://www.atmarkit.co.jp/flinux/index/indexfiles/bind9index.html]]
*** DNSを立てて何が嬉しいのか? [#fdb3ec05]
- はっきりいって「自宅でサーバ!」これの一番の目的ですよ!せんせ!!~
自宅サーバを立てる前に、まずはドメイン((ドメイン取得の方法はこちらを参照))を取得しておくことが前提です。~
※順序が逆でも問題ないけど。。。DNSの反映まで時間がかかるのよ。
*** sea-bird.org の設定 [#rf10df5f]
- sea-bird.org の上位というか、グローバルIPを付与してくれてお世話になっているのは、~
[[INTERLINK>http://www.interlink.or.jp/]]で、[[ZOOT for フレッツ・ADSL>http://www.interlink.or.jp/service/flets/adsl/naiyo.html]]というサービスです。このサービスを使ってsea-bird.orgの設定をしてます。~
COLOR(RED){※インターリンクでは[[BIND8/9の設定方法>http://www.interlink.or.jp/service/flets/moot/bind8x_9x.html]]を載せているのでこれに沿ってと。}
: 前提条件 | COLOR(RED){''bind''}パッケージとCOLOR(RED){''caching-nameserver''}パッケージがインストール((パーケッジの[[インストール方法>パーケッジのインストールの巻]]はこちらを参照))されていることが条件。~
パッケージの確認は、COLOR(RED){''rpm -q bind''}コマンドで確認できるよ。~
- 各種設定ファイルは、以下の様にしておくこと。
-- COLOR(RED){''/etc/hosts''} 特に特記することはないけど、IPアドレスベースのホスト名解決をしているようだったらその定義をコメントする。
-- COLOR(RED){''/etc/resolv.conf''} domain は、自分の取得したドメイン名、あとはnameserver は適時かくと。
domain sea-bird.org
nameserver 203.bbb.ccc.ddd
nameserver 203.141.128.33
-- COLOR(RED){''/etc/nsswitch.conf''} 名前解決の順序です。 hosts → dns でいいでしょうっと。
hosts: files dns
-- SuSEのBINDはデフォルトでipv6対応になっており、ipv6でつながっていない環境でそのまま使用すると名前解決が~
遅いそうです。なのでCOLOR(RED){''/etc/modules.conf.local''}にipv6を無効にする定義をしときます。
# vi /etc/modules.conf.local
# Turn off IPv6
alias net-pf-10 off
alias ipv6 off
*** ようやくきましたBINDの定義っす [#z4c0737a]
- 伏字にしてあるのは、問題があるからです。ご理解おば(笑)
- ''/var/named/'''chroot'''/var/named'' → '''chroot''' は、セキュリティを考慮した環境であれば既に導入されているもの。~
yum(rpm)でインストールした場合はすでにchrootの設定はなされています。[[chrootって??>http://www.atmarkit.co.jp/flinux/rensai/lfs02/lfs02a.html]]
-- COLOR(RED){''/etc/named.conf''}
//
// named.conf for Red Hat caching-nameserver
//
// 内部ネットワーク定義
acl localnet{
192.168.1.0/24;
127.0.0.1;
};
options {
version "unknown";
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
allow-transfer {
203.bbb.ccc.ddd; ← 自分のグローバルIP
203.141.128.33; ← セカンダリDNSアドレス
};
};
//
// a caching only nameserver config
//
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
// 内部向けゾーン情報
view "lan" {
match-clients {
localnet;
};
// ルートキャッシュファイル
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
// sea-bird.org の正引きゾーン情報
zone "sea-bird.org" IN {
type master;
file "sea-bird.org.db.lan";
allow-update { none; };
};
// 192.168.0.XXX の逆引きゾーン情報
zone "0.168.192.in-addr.arpa" IN {
type master;
file "0.168.192.in-addr.arpa.db";
allow-update { none; };
};
};
// 外部向けゾーン情報 / sea-bird.org
view "wan" {
match-clients {
any;
};
// sea-bird.org の正引きゾーン情報
zone "sea-bird.org" IN {
type master;
file "sea-bird.org.db";
allow-query { any; };
};
};
include "/etc/rndc.key";
-- COLOR(RED){''/var/named/chroot/var/named/sea-bird.org''} 外部の正引き情報
$TTL 86400
@ IN SOA ns.sea-bird.org. root.sea-bird.org. (
20030812 ; Serial
10800 ; Refresh after 3 hours
3600 ; Retry after 1 hours
604800 ; Expire after 1 week
86400 ; Minimum TTL of 1 day
)
;
IN NS ns.sea-bird.org.
IN NS tegtan1.interlink.or.jp.
;
IN A 203.bbb.ccc.ddd; ← 自分のグローバルIP
IN MX 10 mail.sea-bird.org.
;
localhost IN A 127.0.0.1
ns IN A 203.bbb.ccc.ddd; ← 自分のグローバルIP
;
www IN CNAME ns.sea-bird.org.
mail IN CNAME ns.sea-bird.org.
-- COLOR(RED){''/var/named/chroot/var/named/sea-bird.org.db.lan''} 内部の正引き情報
$TTL 86400
@ IN SOA sea-bird.org. root.sea-bird.org. (
2004031901 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS sea-bird.org.
IN MX 10 sea-bird.org.
@ IN A 192.168.0.xx ← 公開するサーバアドレス(もちろんローカルIP)
* IN A 192.168.0.xx ← 公開するサーバアドレス(もちろんローカルIP)
-- COLOR(RED){''/var/named/chroot/var/named/0.168.192.in-addr.arpa.db''} 内部の逆引き情報
$TTL 86400
@ IN SOA sea-bird.org. root.sea-bird.org. (
2004031901 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS sea-bird.org.
IN MX 10 sea-bird.org.
xx IN PTR sea-bird.org. ← xxは、公開するサーバアドレス(もちろんローカルIP)の下位
xx IN PTR window-shop.biz. ← xxは、公開するサーバアドレス(もちろんローカルIP)の下位
- 定義が終わったらBINDを立ち上げる前に、''named-checkconf''コマンド、''named-checkzone''コマンドにて文法をチェックする。~
くわしくは、[[パソコンおやじ-DNS(BIND)の設定>http://www.aconus.com/~oyaji/dns/bind_linux.htm]]を参照のこと。
*** BINDを起動する [#e8abd7a2]
- BINDを起動する
# /etc/rc.d/init.d/named start
-- 設定したDNS情報を参照するには、自分以外のネットワークから''dig''コマンドを打って確認するほかありません。~
それかDNS情報を表示するサービスを行っているサイトで確認かな。
: 注意!! | BINDを起動しても実際に外部のインターネット上にDNS情報が配信されるまでは、約COLOR(RED){1〜3日}程度かかります。
- OSの起動を行なったときにBINDを自動的に起動するように設定する
# chkconfig named on
*** 参考にさせて頂いたサイト様 [#q0c8e5f5]
- [[外部/内部向けDNSサーバー構築(BIND)>http://fedorasrv.com/bind-wan.shtml]]
- [[DNS(BIND)の設定(外向き)>http://www.aconus.com/~oyaji/dns/bind_linux_out.htm]]
- [[UNIX系OS(RedHat、TurboLinux、FreeBSDなど)でBIND8.xまたはBIND9.xでDNSサーバを構築する設定例を紹介します。>http://support.interlink.or.jp/service/zoot/moot/bind_unix.html]]
- [[@IT:次世代のセキュリティ拡張DNSSECをBIND 9で実現(3/3)>http://www.atmarkit.co.jp/flinux/rensai/bind913/bind913c.html]]