このページはBINDについて。
postfix, Qpopperは別のページにいきましょう。
自宅サーバ名義のメールを送受信したい。 使うソフトウェアは以下のとおり
| postfix | SMTPサーバ(いわゆる、メール配受信ソフト、MTA) |
| bind | DNSサーバ(postfixには必須) |
| qpopper | POPサーバ(これなくてもメールは配信できます) |
正確に言えば、bindがなくてもpostfixは動きます。 でも、やっぱり推奨構成のほうがいいでしょ。 個人的には推奨構成を目指します。
ちなみに、DynamicDNSを使う場合は、MXレコードを登録できるところじゃないとだめです。うちではDynamic DO!.jpを使ってます。
うちにはサーバがひとつしかないので、DNSサーバ、メールサーバは同じ物を使います。 メールは@kenstar.orgあてで届くようにしたいです。 そして、自宅のマシンにはこんな名前をつけようと思います。 こんな命名規則でも大丈夫。
| ドメイン名 | kenstar.org | |
| Mail Server | altir (FQDN: altir.kenstar.org) | 192.168.0.10 |
| DNS Server | altir (FQDN: altir.kenstar.org) | 192.168.0.10 |
ちなみに、TurboLinuxでは、bindのrpmが用意されていなかったので、TurboLinuxのftpサイトから
SRPMをもらってきてコンパイル、インストール。別に問題なく動いてます。
コンパイル方法は、ほかの方のホームページを見てください。「rpm -i」+「rpm -bb」がミソです。
ftp.turbolinux.co.jp:/pub/TurboLinux/TurboLinux/ia32/Server/8/source/SRPMS/
domain localhost.localdomain search localhost.localdomain nameserver 192.168.0.1 |
| ↓ |
domain kenstar.org #search localhost.localdomain nameserver 127.0.0.1 nameserver 192.168.0.10 nameserver 192.168.0.1 |
domainの名前を、ドメイン名に変更。 また、nameserverを自分自身を一番最初にもってくる。 (192.168.0.1は、家にあるルータで、Proxy DNSを持っています。)
dnssec-keygen -a hmac-md5 -b 512 -n user namedこれを実行することにより、カレントディレクトリに
Krndc.***.key Krndc.***.privateの二つのファイルが作成されます。
| # Start of rndc.conf key "rndc-key" { algorithm hmac-md5; secret "********"; }; options { default-key "rndc-key"; default-server 127.0.0.1; default-port 953; }; # End of rndc.conf |
# Use with the following in named.conf, adjusting the allow list as needed:
key "rndc-key" {
algorithm hmac-md5;
secret "*****";
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};
options {
version "????";
directory "/etc/namedb";
pid-file "/var/run/named/named.pid";
};
zone "." {
type hint;
file "named.root";
};
zone "localhost" {
type master;
file "localhost.zone";
};
zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "localhost.rev";
};
zone "kenstar.org" {
type master;
file "kenstar.zone";
};
zone "0.168.192.in-addr.arpa" {
type master;
file "kenstar.rev";
};
# End of named.conf |
versionの???は、バージョンを聞かれても答えないようにするために設定。
directoryは、設定ファイルを置くディレクトリ。
localhostの設定のために、localhost.zone, localhost.revを見るように設定。
kenstar.orgの設定のために、kenstar.zone, kenstar.revを見るように設定。
make-localhostがないので、手作業で作成。 これがあれば、localhost.zoneとかが自動的に生成されるらしいのに。。
localhost.zone
@ IN SOA localhost. root.localhost. (
2003112701 ;Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
IN NS localhost.
IN A 127.0.0.1 |
@ IN SOA localhost. root.localhost. (
2003112701 ;Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
IN NS localhost.
1 IN PTR localhost. |
そして次に、自分のドメインの設定をします。といっても、設定するサーバはひとつしかないので、 簡単は簡単ですね。
kenstar.zone
@ IN SOA altir.kenstar.org. root.kenstar.org. (
2003112701 ; Serial
163600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
IN NS altir.kenstar.org.
IN MX 10 altir.kenstar.org.
altir IN A 192.168.0.10
ns IN CNAME altir |
kenstar.zoneファイルは、「**.kenstar.org」を「192.168.0.??」と変換するためのファイルですね。
NSはName Serverの略だと思う。DNSのアドレスを設定。
「root.kenstar.org.」は、よく分からないけど、とりあえず入れとけってかんじ。
ちゃんとした意味はご自身で調べてくださいね。
ほんとはそんなこと言っちゃいけないんだけど、動いてるからいいや。
MXは、メールサーバの設定。次に書かれている10は、優先度。ひとつしかメールサーバがないので10でいいでしょ。 その次には、メールサーバのアドレスを書く。これは、CNAMEで設定したアドレスだとうまくいきません。
Aは、マシン名に対応するアドレスを書きます。
CNAMEは、別名をつけます。 上記例では、nsをaltirの別名にしてます。
kenstar.rev
@ IN SOA altir.kenstar.org. root.kenstar.org.(
2003112701 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
IN NS altir.kenstar.org.
IN MX 10 altir.kenstar.org.
10 IN PTR altir.kenstar.org. |
「192.168.0.??」を「***.kenstar.org」に変換するためのファイルですね。
記述内容はkenstar.zoneとほとんど変らないです。
最後の行の10というのは、192.168.0.10の10で、
IPアドレスとマシン名を対応付けてます。
# /etc/rc.d/init.d/named startで起動できるはず。
nslookupをつかうと、dig、hostを使えといわれます。まあ、全部試しましょう。
dig(正引き)
[root]# dig altir.kenstar.org ; <<>> DiG 9.2.1 <<>> altir.kenstar.org ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56800 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0 ;; QUESTION SECTION: ;altir.kenstar.org. IN A ;; ANSWER SECTION: altir.kenstar.org. 3600 IN A 192.168.0.10 ;; AUTHORITY SECTION: kenstar.org. 3600 IN NS altir.kenstar.org. ;; Query time: 3 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Sat Nov 29 13:22:16 2003 ;; MSG SIZE rcvd: 68 |
なんかちゃんと引けてる感じですね。よかったよかった。
dig(逆引き)
[root]# dig 192.168.0.10 ; <<>> DiG 9.2.1 <<>> 192.168.0.10 ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 36983 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 ;; QUESTION SECTION: ;192.168.0.10. IN A ;; AUTHORITY SECTION: . 10684 IN SOA A.ROOT-SERVERS.NET. NSTLD.VERISIGN-GRS.COM. 2003112801 1800 90 0 604800 86400 ;; Query time: 2 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Sat Nov 29 13:26:21 2003 ;; MSG SIZE rcvd: 105 |
なんかちゃんと引けてませんね。なぜ???まあいいや。
host (正引き)
[root]# host altir altir.kenstar.org has address 192.168.0.10 |
ちゃんと引けてるね
host (逆引き)
[root]# host 192.168.0.10 10.0.168.192.in-addr.arpa domain name pointer altir.kenstar.org. |
digだとだめだったのに、引けてるなぁ。まあいいでしょ。
nslookup (正引き)
[root@altir namedb]# nslookup altir Note: nslookup is deprecated and may be removed from future releases. Consider using the `dig' or `host' programs instead. Run nslookup with the `-sil[ent]' option to prevent this message from appearing. Server: 127.0.0.1 Address: 127.0.0.1#53 Name: altir.kenstar.org Address: 192.168.0.10 |
うむ、引けてる引けてる。
nslookup (逆引き)
[root@altir namedb]# nslookup 192.168.0.10 Note: nslookup is deprecated and may be removed from future releases. Consider using the `dig' or `host' programs instead. Run nslookup with the `-sil[ent]' option to prevent this message from appearing. Server: 127.0.0.1 Address: 127.0.0.1#53 10.0.168.192.in-addr.arpa name = altir.kenstar.org. |
うむ、引けてるね