1、域名服务器简介
域名解析器
host文件:hosts文件记录主机域名和ip的对应文件
NIS服务器:库存放解析记录
DNS服务器:用库存放目录,分布式解析
1.DNS作用
正向解析:将域名(FQDN)解析成ip
反向解析:将ip解析成域名(FQDN)
FQDN:Full Qualified Domain Name完全合格域名(完整域名)
一个域名对应一个ip
一个ip可以对应多个域名
2.DNS的工作模式
递归查询(不管是否访问成功,访问一去一回)
迭代查询(多次询问,多次返回结果)
3.域名结构.
根域.com
.net
…顶级域名.com.cn
…二级域www
、mail
…主机名
4.根DNS
共有13台
M在日本,暂时查不到。
5.域名服务器分类主域名服务器
特定DNS区域的官方服务器,具有唯一性
负责维护该区域内所有域名->ip地址的映射记录从域名服务器
也称为辅助域名服务器
其维护的 域名->ip地址记录 来源于主域名服务器缓存域名服务器
可运行域名服务器软件,提供间接信息转发域名服务器
负责所有非本地域名的本地查询
6.bind软件包
BIND
伯克利Internet域名服务
官方站点:https://www.isc.org(ftp://www.isc.org)
软件包:bind-x.x.x…rpm
服务名:named
端口号:53
主配置文件:/etc/named.conf
保存DNS解析记录的数据文件位于:/var/named
2、域名服务器安装和配置
查看默认安装根域名服务器
vi /var/named/named.ca
1.安装
yum -y install bind*
bind
:DNS服务器软件包bind-utils
:DNS测试工具bind-chroot
:使bind运行在指定目录(可安装,安装后很多默认位置发生改变)
如果安装bind-chroot(我这里感觉麻烦,没安装)
cp /etc/named.conf /var/nammed/chroot/etc
caching-nameserver
:高速缓冲DNS服务器基本配置文件
配置文件详解
(1)/etc/named.conf
主配置文件
vi /etc/named.conf
options {
listen-on port 53 { 127.0.0.1; }; #监听地址和端口,如果删除,会默认在所有接口UDP 53 端口监听服务
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; }; #允许哪些网段的客户端使用DNS进行解析。若设置成any则对所有网段进行解析
(2)/etc/named.rfc1912.zones
区域配置文件
zone "localhost.localdomain" IN { #zone表示区域,in跳转指针
type master; #主DNS服务器
file "named.localhost"; #指定正向解析数据文件位置
allow-update { none; };
};
zone "1.0.0.127.in-addr.arpa" IN {
type master;
file "named.loopback"; ##指定反向解析数据文件位置
allow-update { none; };
};
(3)数据文件
正向解析模板文件:/var/named/named.localhost
$TTL 1D
@ IN SOA @ rname.invalid. ( #@表示当前所在域域名,配置改成具体域名。rname.invalid.管理员邮箱
0 ; serial
1D ; refresh #时间D表示天,W表示周
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
反向解析模板文件:/var/named/named.empty
$TTL 3H
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
AAAA ::1
2.关闭防火墙和selinux
iptables -F
#检查是否关闭:getenforce
setenforce 0
3.配置文件
配置ip:ifconfig eth0 192.168.1.33
(1)修改主配置文件/etc/named.conf
listen-on port 53 { 192.168.1.33; };
allow-query { 192.168.1.0/24; }; #指定网段,也可以写成any所有网段
(2)修改区域文件/etc/named.rfc1912.zones
1)备份
cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak
2)修改
可删掉注释信息和无用项,只保留正向和反向
zone "qwzf.com" IN { #zone表示区域,in跳转指针
type master; #主要区域
file "qwzf.com.zone"; #指定解析记录数据文件位置
allow-update { none; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.zone";
allow-update { none; };
};
(3)修改数据文件
1)复制模板文件到指定数据文件
cp -p /var/named/named.localhost /var/named/qwzf.com.zone #正向
cp -p /var/named/named.empty /var/named/192.168.1.zone #反向
#-p保存属性
2)修改正向解析文件qwzf.com.zone
$TTL 1D
@ IN SOA qwzf.com. rname.invalid. ( #@表示当前所在域域名,配置改成具体域名。rname.invalid.管理员邮箱
0 ; serial
1D ; refresh #时间D表示天,W表示周
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.qwzf.com.
MX 5 mail.qwzf.com. #设置邮件域名服务器,数字越小优先级越高
dns A 192.168.1.33
mail A 192.168.1.34
www A 192.168.1.35
ftp CNAME www
* A 192.168.1.100 #提供泛域名解析
3)修改反向解析文件192.168.1.zone
$TTL 3H
@ IN SOA qwzf.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.qwzf.com.
MX 5 mail.qwzf.com.
33 PTR dns.qwzf.com.
34 PTR mail.qwzf.com.
35 PTR www.qwzf.com.
* PTR xxx.qwzf.com.
4.启动
service named start
3、客户端验证
添加dns服务器
vi /etc/sysconfig/network-scripts/ifcfg-eth0
#DNS1=192.168.1.33
重启网卡
service network restart
测试
nslookup #安装 nslookup, 直接安装bind-utils即可。yum -y install bind-utils
测试成功,ok。