我们目的是用一台局域网机器完成 192.168.1.113 <-->cloudshield.com的解析,指定A记录和CNAME;

0.关于​​Ubuntu​ 14.04.2 LTS 下载、安装、更新这里就直接跳过了;


1.下载安装工具 bind9 
​sudo apt-get install bind9​

DNS 配置文件在/etc/bind 目录中。安装bind9后会生成如下三个配置文件: 
named.conf; 
named.conf.options; 
named.conf.local; 其中 named.conf是主配置文件,里面包含了named.conf.options和named.conf.local,我们在架设本地dns时,只需改动named.conf.local即可;

2.修改/etc/bind/named.conf.local文件,主要是添加两个zone:正向解析和反向解析(​​这里直接附上我自己的配置截图,由于编辑器会去除文件中的tab变成空格,所以就不贴配置文件引起误解了,最后会放在附件里,如果有需要的可以下载​​)

Ubuntu 14.04.3 LTS 配置 DNS Server_vim


// domain->ip
zone "" in {
type master;
file "/var/cache/bind/";
};

// ip->domain
zone "3.168.192.in-addr.arpa" in {
type master;
file "/var/cache/bind/reverse/db.3.168.192";
};



3.建立文件并配置(具体的文件位置根据named.conf.local的路径来定) 
​sudo touch /var/cache/bind/​ 
然后​​sudo vi ​​打开如下编辑就行了

Ubuntu 14.04.3 LTS 配置 DNS Server_vim_02

vim /var/cache/bind/


$TTL    604800
@ IN SOA . roo.. (
2 ;Serial
604800 ;Refresh
86400 ;Retry
2419200 ;Expire
604800) ;Negative Cache TTL

@ IN NS ns..
@ IN A 192.168.3.47
ns IN A 192.168.3.47
test IN A 192.168.3.47
home IN A 192.168.3.47
www IN A 192.168.3.47



这里要注意除了前后是空格文件中间空格都是tab

4.建立db.1.168.192文件并如下编辑(这里因为DNS解析是自右向左的所以就写倒着写了,并且是一个ip段,具体做法与上类似,不再赘述)

Ubuntu 14.04.3 LTS 配置 DNS Server_vim_03

vim /var/cache/bind/db.3.168.192


$TTL    604800
@ IN SOA . root.. (
2 ;Serial Number
604800 ;Refresh
86400 ;Retry
2419200 ;Expire
86400 ) ;Minimum

@ IN NS .
66 IN PTR test..
66 IN PTR .
66 IN PTR www.easyunion.ent.
66 IN PTR ns..


5.在 /etc/bind/named.conf.option中做些文件日志位置指向

Ubuntu 14.04.3 LTS 配置 DNS Server_.net_04

6.设定本机为第一个DNS nameserver,在/etc/resolv.conf文件(注意:我在修改的时候这是个链接文件,所以直接过去修改源文件就行)

添加在第一行:​​nameserver 192.268.1.113​ 
Ubuntu 14.04.3 LTS 配置 DNS Server_.net_05

到这里整个DNS 配置就完成了;

7.测试一下呐:

​记得首先的重启下bind9​ 
shell 敲​​service bind9 restart​

这个时候可以用 host/dig/nslookup等工具(一般自带)来测下:

host: 
Ubuntu 14.04.3 LTS 配置 DNS Server_.net_06

dig: 
Ubuntu 14.04.3 LTS 配置 DNS Server_配置文件_07

nslookup: 
Ubuntu 14.04.3 LTS 配置 DNS Server_.net_08

8.如果无法测试通过或重启不了bind,很可能是因为配置文件格式不正确,可以使用tail命名来查看系统日志,逐步查找问题,相信办法总比困难多;

​tail -10 /var/log/syslog​