一、 概述
DNS全称domain name system,即域名服务系统,用于‘IP->域名’映射管理和解析。DNS服务器多用于内部局域网,功能同 114.114.114.114。
BIND作为DNS协议的实现,提供了DNS服务器应有的功能。本篇所搭建之DNS服务器即为BIND实现——BIND9。
二、搭建BIND9服务器
查看是否安装BIND9
dpkg -l bin*
删除已安装的BIND9
sudo apt-get remove --purge bind9 bind9-host dnsutils
安装BIND9
sudo apt-get update sudo apt-get install bind9 bind9-host dnsutils
若apt无法下载:
① 检查/etc/resolv.conf nameserver 114.114.114.114 ②更新下载源 apt-get update
③更换下载源
sudo vim /etc/apt/resources.list
查看BIND配置文件族
ll /etc/bind/
修改named.conf.local配置文件:加入以下内容
zone "silence.com" { // 定义域名 type master; // 主服务器 file "/etc/bind/db.silence.com"; // 指定区资源文件的位置 }; zone "6.168.192.in-addr.arpa" { // 配置反向解析 type master; // 主服务器 file "/etc/bind/db.6.168.192"; // 指定反向区资源文件的位置 };
创建区资源文件: db.silence.com
sudo cp db.local db.silence.com
编辑文件内容:
; ; BIND data file for local loopback interface ; $TTL 604800 $ORIGIN silence.com. @ IN SOA silence.com. root.silence.com. ( 20170220; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns @ IN A 192.168.6.188 ns IN A 192.168.6.188 DATANODE2 IN A 192.168.6.188
解释:
$TTL 604800生存时间。该资源记录中的信息存放在高速缓存中的时间长度。604800秒,即1周。
$ORIGIN silence.com.
说明下面的记录出自何处.最后的一个小数点"."不可少
@ IN SOA silence.com. root.silence.com. (
@ 即上行的silence.com silence.com.指定了这个区域的授权主机 root.silence.com.指定了管理者的信箱,第一个 . 指代@
20170220; Serial
版本号,slave DNS进行资料同步时会比较此值
604800 ; Refresh
定义slave DNS需要多久资料同步
86400 ; Retry
定义slave更新失败后,多久开始再次重试
2419200 ; Expire
定义slave与master失去联系多久以后,放弃重试
604800 ) ; Negative Cache TTL
最小默认TTL值,若前面有定义此值,则以前面为准
;
注意:SOA 记录中这对 “ ( ) ”之第一个 “ (”括号一定要和 SOA 写在同一行,而且其左边最好有一个空格键或 tab 建。而最后一个 “ )”括号也不能写在注解符号 “ ;”的右边。 不同内容之间用一个空格键或tab键隔开。
@ IN NS ns
NS表明负责silence.com.这个域的Name Server是silence.com这台主机
@ IN A 192.168.6.188
A记录标明了IP地址和域名之间的对应关系
ns IN A 192.168.6.188
DATANODE2 IN A 192.168.6.188创建反向区资源文件:
db.6.168.192 sudo cp db.127 db.6.168.192
编辑文件内容:
; ; BIND reverse data file for local loopback interface ; $TTL 604800 @ IN SOA silence.com. root.silence.com. ( 20170220 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS silence.com. 188 IN PTR DATANODE2.silence.com. 188 IN PTR ns.silence.com.
解释:
PTR记录用来解析IP地址对应的域名,也就是反向域名解析
修改etc/resolv.conf文件
加入:nameserver 192.168.6.188 (该内容在每次重启之后后被动态覆盖)
重启DNS服务器
sudo /etc/init.d/bind9 restart
测试DNS服务:ping DATANODE2.silence.com
三、客户端使用DNS服务器
在etc/resolv.conf文件加入DNS服务器地址:
nameserver 192.168.6.188