DNS(Domain Name System),域名系統,提供由域名解析到ip的服務,是互聯網的重要基礎服務。
下面咱們就來在CentOS7上使用bind配置一下DNS服務器vim
yum install bind-chroot -y
域名解析服務Bind的程序名稱叫作named,服務程序的配置文件以下:centos
主程序 | /usr/sbin/named |
主配置文件 | /etc/named.conf |
區域配置文件 | /etc/named.rfc1912.zones |
修改主配置文件緩存
[root@tianzhankui-hbza ~]# vim /etc/named.confbash
// 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";
修改後的文件:
服務器
正向解析的做用是根據主機名(域名)查找到對應的IP地址,區域文件中已有一些默認信息,可沒必要理會,直接在下面追加便可:
[root@tianzhankui-hbza ~]# vim /etc/named.rfc1912.zones
zone "centos.com" IN {
type master;
file "centos.com.zone";
allow-update {none;};
}網絡
能夠直接複製正向解析模板文件:」/var/named/named.localhost「,填寫信息後便可直接使用。session
切換工做目錄到bind(named)數據目錄:ide
[root@tianzhankui-hbza ~]# cd /var/named/ui
查看區域數據文件的權限:spa
[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
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