DNS域名服务器搭建
系统环境需求:centos7
什么是DNS服务器
DNS(Domain Nmae Server)域名服务系统,对域名进行解析。
域名空间又是什么?
根域 “.” :代表域名空间的根。
顶级域:直接处于根域下面,以国家或地区命名
二级域:在顶级域下面
子域:属于更高一层域的域
主机:FQDN完全合格的域名
DNS的域名空间的规则
局域网内:活动目录
联接互联网:必须向提供商去申请
DNS服务器的规则
主DNS服务器
备份DNS服务器
域名解析过程
I、查看是不是本地计算机
II、查看NETBIOS名称缓存
III、查询wins服务器
IV、在本网段进行广播查询
V、Lmhost文件
VI、host文件
VII、DNS服务器
FQDN与IP地址之间的解析
正向解析:将域名解析成IP地址
反向解析:将IP地址解析成域名
IP地址与物理地址之间的解析
正向地址解析:通过ARP协议将IP地址解析成物理地址(MAC)
反向地址解析:通过RARP协议将MAC解析成IP地址
查询模式
递归查询、直接查询、迭代查询、反向查询
端口
tcp/53 udp/53
DNS记录
1、主机记录(A记录) : 主机名和IP地址的对应关系
A IPv4的地址
AAAAIPv6的地址
2、起始授权机构(SOA)记录:记录名称服务器和管理名称服务器的电子邮件
3、名称服务器(NS)记录:记录管辖此区域的名称服务器
4、别名(CNAME)记录
5、邮件交换记录(MX):根据收信人地址的后缀名来定邮件服务器
6、PTR:反向指针记录
7、其他记录
HINF INFO MR MB 等。
DNS服务器安装
yum install bind
服务名:named.service
启动服务:systemctl start named.service
开机自启:systemctl enable named.service
主配置文件
/etc/named.conf
options {
listen-on port 53 { 127.0.0.1; }; #地址修改为any
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";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { localhost; }; #localhost修改为any
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.root.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;
};
};
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones"; #辅助区域配置文件
include "/etc/named.root.key";
在添加域名解析条目请在辅助区域配置文件进行修改/etc/named.rfc1912.zones
在/etc/named.rfc1912.zones文件内添加解析规则:
zone "xqweb.com" IN {
type master;
file "xqweb.com.zone";
allow-update { none; };
};
配置区域配置文件:/var/named/
在改目录下有区域配置文件的样板,可以直接复制并重命名
cp named.localhost xqweb.com.zone
文件名需要和辅助配置文件里的file后的内容相同。
#模板
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
#修改后的样子是这样的
$TTL 1D
@ IN SOA xqweb.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.xqweb.com.
dns A 192.168.101.9
www A 192.168.101.14
mail A 192.168.101.1
ftp A 192.168.101.4
AAAA ::1
启动DNS服务器,如果没有报错那就代表配置成功。
最后一步
将xqweb.com.zone文件的属组修改为named,否则DNS服务器没法读取区域配置文件的内容
chown :named xqweb.com.zone
关闭防火墙:systemctl stop filewalld
关闭SeLinux安全机制:setenforce 0
检验
在windows下将dns地址设置为192.168.101.9
在dos下执行nslookup