====== 安装 BIND ======
自行管理 DNS (nameserver) 是非常简单的,您只需要几分钟可以完成安装与设定,有大约五个档案需要设定,并且整个操作过程相当的直觉简单。
首先,您需要自己安装 BIND。因为 BIND ([[http://en.wikipedia.org/wiki/BIND|Berkeley Internet Name Daemon]]) 是非常普遍使用的软体,您只需要输入下列指令就可以安装到最新的 BIND 9 在您的伺服器里面。
apt-get install bind9 dnsutils
===== 设定 BIND =====
这里是最重要的部份。下表的档案就是我们需要修改的设定档:
^ 档案 ^ 用途 ^
|named.conf.local |设定您的网域与辖区档的位置 |
|named.conf.options | BIND 的其他设定,例如额外的 IP 位置 |
|resolv.conf |设定您系统查询的 DNS 主机 |
|zone file |辖区正解档 |
|reverse DNS zone file |辖区反解档 |
===== named.conf.local =====
named.conf.local 这个设定档是 BIND 的重要设定档。您必须将您的网域设定放在这里面。请使用您喜爱的编辑器来修改他,例如您是使用 nano 的话,请输入:
nano /etc/bind/named.conf.local
然后,**在这台伺服器增加您的网域设定**, 加入如下面的网域设定(请将两个 "whack-a-mole.eu" 都换成您的设定):
zone "whack-a-mole.eu" {
type master;
file "/etc/bind/zones/whack-a-mole.eu.db";
};
===== named.conf.options =====
请记得要修改 named.conf.options 这个档案:
nano /etc/bind/named.conf.options
如果您要管理很多网域名称的解析,您需要将每个网域名称的设定档都独立放在这个档案内。同时,如果有辖区档传送(Zone transfer)的需求,也请在这边进行设定。
例如,在这里我们使用 ns6.gandi.net 来当作 whack-a-mole.eu 这个网域名称的第二台名称伺服器,所以设定如下:
zone "whack-a-mole.eu" (
type master;
allow-transfer {217.70.177.40;};
file "/etc/bind/db.whack-a-mole.eu";
)
您必须在每个需要辖区传送的网域名称内都加入像这样的设定,并且指定第二台名称伺服器的 IP 位置,主伺服器才会允许其他名称伺服器的辖区传送。
===== resolv.conf =====
您将会需要编辑 resolv.conf,并将您的域名伺服器的 IP 加入档案中。注意,这个档案并不是在 BIND 的目录中而是在其他地方,/etc 的资料夹内,透过下列命令编辑他:
nano /etc/resolv.conf
请输入如下的资料,请记得要将 "whack-a-mole.eu" 修改成您的网域名称,并且要将 "217.70.190.17" 改成您的伺服器 IP 位置([[en:hosting:manage-server:my-ip-address|不知道怎么找吗?]]). 伺服器的排序是有顺序的。在下面的范例中我们使用 Gandi 的 ns6.gandi.net 这台伺服器(IP 217.70.177.40) 来当作第二个名称伺服器。
search whack-a-mole.eu
nameserver 217.70.190.17
nameserver 217.70.177.40
===== 辖区设定档 =====
这个档案纪录了您的网域名称对应到伺服器的解析纪录,或是邮件伺服器的位置,我们称这个档案为 '辖区设定档(zone file)'。如果您使用 Gandi 的([[zh:dns:zone|预设辖区档]]),您可以在 Gandi 的界面看到跟这一样的内容 。([[en:dns:zone|more]])
**1. 首先建立存放辖区设定档的资料夹:** 这个资料夹存放你所有的辖区设定档。
mkdir /etc/bind/zones
**2. 帮您的网域名称建立一个辖区设定档**
现在您需要建立一个 DNS 使用的辖区设定档来对应您的网域名称与 IP 位置(接下来的范例中,请将 whack-a-mole.eu 替换成您的真实资料)。使用下列指令来建立一个新档案(记得替换 whack-a-mole.eu 为你的网域名称):
nano /etc/bind/zones/whack-a-mole.eu.db
下面是辖区设定档(zone file)中的范例:
whack-a-mole.eu. IN SOA boom.whack-a-mole.eu. admin.whack-a-mole.eu. (
2006081401
28800
3600
604800
38400
)
whack-a-mole.eu. IN NS boom.whack-a-mole.eu.
whack-a-mole.eu. 10800 IN MX 10 spool.mail.gandi.net.
whack-a-mole.eu. 10800 IN MX 50 fb.mail.gandi.net.
pop 10800 IN CNAME access.mail.gandi.net.
imap 10800 IN CNAME access.mail.gandi.net.
smtp 10800 IN CNAME relay.mail.gandi.net.
webmail 10800 IN CNAME agent.mail.gandi.net.
www IN A 217.70.190.20
mta IN A 217.70.190.17
boom IN A 217.70.190.17
(您将需要替换上面范例中的值,改成您的设定。这边的范例是使用 Gandi 的 GandiMail 与网页伺服器)
您可以在 Gandi DNS 的管理页面中使用 '[[zh:dns:zone#l-interface-expert|专家模式]]',就可以看到跟第二张图中下半部的部份一样的画面,如您所见,这两个是一样的东西。
===== DNS 反解辖区档(Reverse DNS zone files) =====
建立您的反解档(使用您的 IP 位置的反转后来取代 190.70.217)。
nano /etc/bind/zones/rev.190.70.217.in-addr.arpa
请依照下来原则来替换下列范例,修改成您的反解档:
* 'whack-a-mole.eu.' 改成您的真实网域名称
* 'boom.whack-amole.eu.' 改成您的名称伺服器主机名称
* 数字 '17' 改成您的主机编号(例如,您的 IP 是 190.70.217.**17**,则编号就是 '17')
@ IN SOA whack-a-mole.eu. admin.whack-a-mole.eu. (
2006081401;
28800;
604800;
604800;
86400);
IN NS boom.whack-a-mole.eu.
17 IN PTR whack-a-mole.eu.
===== 重新启动 Restart =====
一旦您完成您的 DNS 伺服器设定,请执行:
/etc/init.d/bind9 restart
如果设定都正常,您会看到如下列讯息:
Stopping domain name service... bind [ OK ]
Starting domain name service... bind [ OK ]
===== 安装 BIND Server: 最简单的方式! =====
Gandi.net 提供 **高扩充与独立的代管服务** 能依照您的需求建立自己的 网域/网页服务。我们的服务能支援很小的规模,每月只要 $14 元起。十分钟就能使用您自己的伺服器。更多代管伺服器的细节请参考我们的 [[http://www.gandi.net/hosting|http://www.gandi.net/hosting/]]。