目录
安装 BIND
自行管理 DNS (nameserver) 是非常简单的,您只需要几分钟可以完成安装与设定,有大约五个档案需要设定,并且整个操作过程相当的直觉简单。
首先,您需要自己安装 BIND。因为 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 位置(不知道怎么找吗?). 伺服器的排序是有顺序的。在下面的范例中我们使用 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 的(预设辖区档),您可以在 Gandi 的界面看到跟这一样的内容 。(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 与网页伺服器)
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/。