ubuntu设置基于bind9的DNS服务器指南
安装bind9
sudo apt-get install bind9
跳转到bind9配置的路径
cd /etc/bind
在这个文件夹下使用
ls -la
应该像这样输入命令
sudo vi named.conf.local
进入文件编辑界面,添加以下字段zone "app.kyee.com.cn"{ type master; file "/etc/bind/db.app.kyee.com.cn"; };
这是配置了正向的解析域(
zone
),以app.kyee.com.cn
为例,当DNS服务器接受到基于app.kyee.com.cn的域的解析请求时,它就会根据这个配置的字段,去找到路径/etc/bind/db.app.kyee.com.cn
下的文件db.app.kyee.com.cn
,读取内容并且返回。参数解释:
zone
: 指定配置的域type
: 值master
表示这是对域app.kyee.com.cn
的主DNS服务器,对于这个域名的解析将会直接根据本地文件(zone file)给出权威性的解析file
: 指定具体配置文件的路径- 直接复制一份
db.local
,并且命名为db.app.kyee.com.cn
sudo cp db.local db.app.kyee.com.cn
然后再进入编辑文件的界面
sudo vi db.app.kyee.com
- 直接复制一份
初始的内容应该为
$TTL 604800 @ IN SOA app.kyee.com.cn. someone.kyee.com.cn. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS localhost @ IN A 127.0.0.1 @ IN AAAA ::1
修改为:
$TTL 604800 @ IN SOA app.kyee.com.cn. someone.kyee.com.cn. ( 3 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS app.kyee.com.cn. @ IN A 172.168.60.177 @ IN AAAA ::1
参数解释:
TTL
: Time To Live的缩写,一旦超过这个时间,DNS服务器就需要重新检查数据SOA
: 定义了域名信息,以及相关联系人的邮箱。注:邮箱中的@
用.
代替Serial
: 值为一个无符号的32位整数,每次对这个文件作出修改后,都需要增加该数值,一般采取的格式可以为2015070101
表示为2015年7月1日第1次修改Refresh
: 规定了数据刷新的周期,从DNS服务器每隔一个周期的时间需要从主DNS服务器重新查询相关数据,以保证从服务器的数据是最新的Retry
: 规定了重试时间间隔,即从DNS服务器在向主服务器更新、连接失败后多长时间后再次尝试更新Expire
: 规定了从DNS服务器在更新数据失败多长时间后清除对应的记录Negative Cache TTL
: 规定了缓冲服务器多长时间无法和主服务器连接上后清除相应的记录@ IN NS app.kyee.com.cn
:NS
代表Name Server
,表示接受的域名@ IN A 172.168.60.177
:A
代表Address
,表示把默认的域名指向IP地址172.168.60.177
运行
bind9 Service
sudo service bind9 start
另关闭和重启的指令分别为:
sudo service bind9 stop
sudo service bind9 restart