前言
DNS(Domain Name System),域名系統,提供由域名解析到ip的服務,是互聯網的重要基礎服務。
下面我們就來在CentOS7上使用bind配置一下DNS服務器
一、安裝配置DNS
(一)安裝域名服務程序
yum install bind-chroot -y
(二)修改相關配置文件
域名解析服務Bind的程序名稱叫做named,服務程序的配置文件如下:
主程序 | /usr/sbin/named |
主配置文件 | /etc/named.conf |
區域配置文件 | /etc/named.rfc1912.zones |
修改主配置文件
[root@tianzhankui-hbza ~]# vim /etc/named.conf
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
// See /usr/share/doc/bind*/sample/ for example named configuration files.
options {
//將下行中的127.0.0.1修改為any,代表允許監聽任何IP地址。
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
//將下行中的localhost修改為any,代表允許任何主機查詢。
allow-query { localhost; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
//此文件內定義了全球13台根DNS服務器的IP地址
zone "." IN {
type hint;
file "named.ca";
};
//此文件保存着正向與反向解析的區域信息,非常的重要。
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
修改后的文件:
二、解析實驗
(一)將系統的DNS地址修改為本機
(二)正向地址解析實驗
1.修改區域配置文件
正向解析的作用是根據主機名(域名)查找到對應的IP地址,區域文件中已有一些默認信息,可不必理會,直接在下面追加即可:
[root@tianzhankui-hbza ~]# vim /etc/named.rfc1912.zones
zone "centos.com" IN {
type master;
file "centos.com.zone";
allow-update {none;};
}
2.配置解析數據
可以直接復制正向解析模板文件:”/var/named/named.localhost“,填寫信息后即可直接使用。
切換工作目錄到bind(named)數據目錄:
[root@tianzhankui-hbza ~]# cd /var/named/
查看區域數據文件的權限:
[root@tianzhankui-hbza named]# ls -al named.localhost
-rw-r-----. 1 root named 152 Jun 21 2007 named.localhost
執行cp命令時加入-a,代表連通復制原來文件的屬性、所有者、組等信息:
[root@tianzhankui-hbza named]# cp -a named.localhost centos.com.zone
編輯centos.com域名的區域數據文件:
[root@tianzhankui-hbza named]# vim centos.com.zone
如圖:
$TTL 1D | #生存周期為1天 | ||||
@ | IN SOA | centos.com. | root.centos.com. | ( | |
#授權信息開始: | #DNS區域的地址 | #域名管理員的郵箱(不要用@符號) | |||
0;serial | #更新序列號 | ||||
1D;refresh | #更新時間 | ||||
1H;retry | #重試延時 | ||||
1W;expire | #失效時間 | ||||
3H;minimum | #無效解析記錄的緩存時間 | ||||
NS | ns.centos.com. | #域名服務器記錄 | |||
ns | IN A | 192.168.20.100 | #地址記錄(ns.centos.com.) | ||
IN MX 10 | mail.centos.com. | #郵箱交換記錄 | |||
IN A | 192.168.20.100 | #地址記錄(mail.centos.com.) | |||
www | IN A | 192.168.20.100 | #地址記錄(www.centos.com.) | ||
bbs | IN A | 192.168.20.100 | #地址記錄(bbs.centos.com.) |
如圖:
重啟named服務讓配置文件立即生效:
[root@tianzhankui-hbza named]# systemctl restart named
3.檢驗解析結果
nslookup命令用於檢測能否從網絡DNS服務器中查詢到域名與IP地址的解析記錄,檢測named服務的解析能否成功。
此為查詢DNS服務器的信息:
[root@tianzhankui-hbza ~]# nslookup
> www.centos.com
Server: 127.0.0.1
Address: 127.0.0.1#53
順利的將域名的對應IP地址解析出來了:
Name: www.centos.com
Address: 192.168.10.10
> bbs.centos.com