linux之DNS主域,从域,缓存服务器的架设

DNS主域,从域,缓存服务器的架设

DNS域名系统 组织域 *域  域名解析过程迭代递归

DNS(Domain Name System )

Internet中使用IP地址来确定计算机的地址。

为了便于对网络地址的管理和分配所以采用了域名系统

域名: 通过为每台主机建立IP地址与域名之间的映射关系,用户可以避开难记的IP地址,而使用域名来唯一标识网络中的计算机。域名和IP地址之间的关系,就像是某人的姓名和身份证号码之间的关系,显然,记住名字比记住身份证号码容易的多。

 

DNS解析过程

wwwbaidu.com  首先pc发送请求给DNS服务器  ,然后DNS负责把baidu.com所对应的IP返回给我们主机, 最后我们的主机通过百度的IP去上网,

把域名转换为ip地址的过程称为DNS解析过程.

 

2.主机名和域名的区别:

主机名是内网的名字   完全域名是外网的名字(主机名+域名)

主机名和域名其实是两个完全可以不同的名字,但是有很多软件(如邮件系统postfix)会默认认为它们一致。

DNS中,域名包括 根域、*域、二级域和主机名。如下图

 

全世界共有13台DNS根域服务器。      

*域:由Internet名称授权机构管理,有两种常见的类型。如下:

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

1)组织域(*域)

.com(商业) .org (组织)  .edu(教育)  .gov (*)  .net(通讯)  .mil(军事)  .info(信息)

 

2)国家或地区*域:

cn(中国) 、 hk(中国香港) 、 uk(英国) 等

 

FQDN=主机名.DNS后缀(FQDN,Fully Qualified Domain Name,完全合格的域名/全称域名)

     完全域名 www.zzz.com.

     www.  为主机名    zzz.com 域名    加起来就是完全域名

 

 

3.域名解析过程

查询 www.offcn.com过程

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

从查询方式分类(递归迭代)

递归查询:客户端得到结果只能是成功或失败  得到一个查询的最终结果

迭代查询:DNS服务器如客户机请求数据   则返回正确地址

DNS服务器没有请求数据 则返回一个指针,指示下一步查询的方向

从查询内容分类(正向反向)

正向解析:根据主机名称(域名)查找对应的 IP 地址

反向解析:根据 IP 地址对应的主机域名

 

 

1.实验1制作缓存服务器

1.)安装bind软件   查看相关软件包

cd /var/named/配置文件位置   

yum -y install bind*

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

rpm -qa | grep “^bind”安装好 查看软件包

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

相关安装包为:

bind-9.9.4-37.el7.x86_64.rpm:提供了域名服务的主要程序及相关文件

bind-chroot-9.9.4-37.el7.x86_64.rpm:BIND服务提供一个伪装的根目录(将/var/named/chroot/文件夹作为BIND的根目录),以提高安全性。

bind-libs-9.9.4-37.el7.x86_64.rpm:提供了bind、bind-utils需要使用的函数   libs 函数库   

bind-utils-9.9.4-37.el7.x86_64.rpm:提供了对DNS服务器的测试工具程序,如nslookup等   utils测试程序

 

2.)启动服务BIND  查看端口   服务控制(服务端)

BIND软件包安装完毕以后,会自1动增加一个名为named的系统服务,通systemctl、service工具都可以控制DNS域名服务的运行。

 

systemctl start named启动named服务:

tail -f /var/log/messages注意:如果报错 调试命令  查看日志排错    

netstat  -antulp | grep name           查看端口  :53

/usr/sbin/named主要执行程序

/usr/lib/systemd/system/named.service服务脚本:默认监听端口:53

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

3.)对配置文件语法检查

named-checkconf 工具

named-checkconf    [可指定主配置文件]

 

named-checkzone 工具

named-checkzone  <域名> <区域数据文>  

示例:        

域名 offcn.com.    区域数据文件为 offcn.com.zone

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

4.)修改网卡和网络(服务器端) 开启dhcp获取IP的功能 虚拟机改为NAT

cd /etc/sysconfig/network-scripts/

vim ifcfg-ens33 把自动获取开启,注释ip和掩码

 

systemctl restart network重启网络   

ifconfig     查看网卡  会看到一个自动分配的IP

linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

虚拟机改为NAT模式,使其能上网

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

5.)ping百度的地址.验证能否上网 (服务器端)

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

nslookup www.baidu.com   

Server:192.168.100.2        ---dns解析的服务器100.2 (可用)

Address:192.168.100.2#53

 

Non-authoritative answer:

www.baidu.comcanonical name = www.a.shifen.com.

Name:www.a.shifen.com

Address: 182.61.200.7     

Name:www.a.shifen.com

Address: 182.61.200.6   

 

 

nslookup  www.baidu.com  192.168.100.2   要解析的完全域名

要查询百度的ip地址        dns服务器的IP地址为192.168.100.2

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

 

6.)配置客户机的ip,使其自动获取  关闭客户机防火墙

客户机的IP

 linux之DNS主域,从域,缓存服务器的架设

 

 

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

 

 

7)去服务器端改 /etc/named.conf  dns配置文件 监听端口 (any)

vim /etc/named.conf文件位置   

 

允许任何人来访问

 linux之DNS主域,从域,缓存服务器的架设

 

 

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

查看这个

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

8.)重启服务  查看端口  确认根域的区域数据文件 named.ca

重启服务: systemctl restart named

重新加载   rndc reload

服务器缓存已经建好

1.启动named服务,并确定named服务的端口监听状态。

若服务启动失败或发现没有正常监听UDP53端口,   可以根据错误提示信息(或/var/log/messages文件中的日志记录)排除错误。

tail -f /var/log/messages注意:如果报错 调试命令   

systemctl start named   ---启动named服务

netstat -anpult | grep named ---确认查看named服务的端口监听状态

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

 

确认根域的区域数据文件 named.ca

 

根区域的区域数据文件默认位于文件/var/named/named.ca中,

该文件记录了Internet中13台根域服务器的域名和IP地址等相关信息。

 

 grep -v "^;" /var/named/named.ca | grep -v ^$

筛选文件中, 不要开头是 分号的”;”  也不要空行  ,其余保留

A为ipv4    AAAA为ipv6

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

9.)修改客户机首选DNS

vim /etc/resolv.conf 首选DNS配置文件   把之前内容注释掉  备份  

 

 

192.168.100.137  为服务器的ip   作为客户端的DNS

设置dns   指向   服务器的ip

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

10.)去客户机解析验证缓存是否成功

 nslookup www.baidu.com     解析百度的IP

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

 

2实验:构建主DNS

DNS架设   --需要两台虚拟机,  主DNS服务端和客户机

1.服务端 配置网卡 安装bind*软件 增加映射/etc/hostname  更改主机名字

配置主,,从DNS服务器的IP地址,使两者可相互通信 并更改主机名字,

hostnamectl set-hostname ns1.offcn.com     --永久改主机名字

hostname  --查看

 linux之DNS主域,从域,缓存服务器的架设

 

 

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

2.)增加映射

 vim  /etc/hosts              编辑文件  增加主机映射

192.168.10.1 ns1.offcn.com

192.168.10.2 ns2.offcn.com

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

验证

ping ns1.offcn.com

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

安装软件查看配置yum环境 , 挂载光盘

 

yum clean all   --清空缓存

yum  -y install bind*  --安装          卸载安装包:yum -y  remove bind

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

2.主配置文件 named.conf 修改监听端口 添加正反解zone域

vim /etc/named.conf    --修改主DNS的配置

 

options {                                       ---修改监听端口

listen-on port 53 { any; };    ---允许监听53端口的ip ,any是本机任何人

listen-on-v6 port 53 { any; };    ----ipv6 允许监听53端口的ip

directory "/var/named";      ---设置域名服务的工作目录

dump-file "/var/named/data/cache_dump.db";   --运行rndc  dumpdb备份缓存资料后保存的文件路径和名称

statistics-file "/var/named/data/named_stats.txt";     --运行rndc stats,统计信息的保存路径和名称

memstatistics-file "/var/named/data/named_mem_stats.txt";

allow-query   { any; };   -指定那个主机可以查询服务器的权威解析记录

 

添加一个正解  一个反解 

zone "offcn.com" IN {       ---zone定义域,希望维护的域名解析

type master;     ----类型

masters{ 192.168.10.2;};  --允许下载区域文件的指定服务器IP指定主服务器的ip

file "offcn.com.zone";    ---下载的区域文件位置, 需要去创建named.ca文件

下载的保存到这里面

};

zone "10.168.192.in-addr.arpa" IN {

        type master;

        file "10.168.192.arpa";

        allow-transfer {192.168.10.2;};

};

Type

Hint:当本地找不到解析的时侯,可以查询根域名服务器

Master : 定义权威域名服务器

Slave:定义辅助域名服务器

Forwad :定义转发域名服务器

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

其中 loaded serial    20191022  是序列号

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

3.建立正、反向 区域数据文件zone

根据named.conf中的zone区域设置,

分别建立正向区域数据文件offcn.com.zone,

反向区域数据文件10.168.192.arpa。

配置文件可以参考区域数据文件/var/named/named.localhost。

注意:要将区域数据文件的所有者改为named,所属的组改为:named,才能解析出ip地址

 

创建正向解析数据文件  vim  /var/named/offcn.com.zone

 

1.)主要解析记录

主域名服务器:ns1.offcn.com.,192.168.10.1

从域名服务器:ns2.offcn.com.,192.168.10.2

两台服务器均能够提供 offcn.com 区域的域名解析

网站服务器“www.offcn.com.”,IP地址为“192.168.10.3”

邮件服务器mail.offcn.com.”,IP地址为“192.168.10.4”

在线培训站点服务器study.offcn.com.”,IP地址为“192.168.10.5”

主域名服务器ns1.offcn.com.”,IP地址为“192.168.10.1”

从域名服务器“ns2.offcn.com.”,IP地址为“192.168.10.2”

 

 

cp named.localhost  offcn.com.zone    --前面指定文件为offcn.con.zone

 

vim /var/name/offcn.com.zone           --新增正向和反向的数据文件  file指定位置

 

vim offcn.com.zone

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

注意:泛域名解析

在后面要加入泛域名解析:

*  IN   A   192.168.10.2

泛域名是指:* 代表了所有主机名

还可以增加别名:

ftp   IN   CAME www

因为之前指定了位置  所以新建位置要和配置位置要一样

 

$TTL 1D

@       IN SOA  ns1.offcn.com. admin.offcn.com. (     -----完全域名

                      序列号  ----    20191022     ; serial

                      缓存的TTL---     1D      ; refresh

                      刷新时间--         1H      ; retry

                      失效时间---       1W      ; expire

                                        3H )    ; minimum

        NS      ns1.offcn.com.     完整的域名,ns1为主机吗,后面为域名

        NS      ns2.offcn.com.     

ns1     A       192.168.10.1      ---ns1的ip配置

ns2     A       192.168.10.2

www   A       192.168.10.3    

mail    A        192.168.10.4      ---邮件

study   A        192.168.10.5     ---学习

ftp     CNAME   www       ---ftp的别名为www,搜ftp会显示www的ip

*       A       192.168.10.1   --泛域名解析,如kkk.offcn.com会显示ns1的IP  kkk为 *任意

4.语法检查对正向反向配置文件检测

正向解析

named-checkconf   

named-checkconf   [可指定主配置文件]

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

反向解析

named-checkzone    

named-checkzone <域名> <区域数据文件>  

示例:        域名 offcn.com.    区域数据文件为 offcn.com.zone

5.建立反向解析

文件位置:  /var /named

cp offcn.com.zone   10.168.192.arpa  --改写前面配置好的  PTR反向解析

或者新建为cp named.loopback 10.168.192.arpa

 

vim 10.168.192.arpa   ---编辑反向解析文件

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

$TTL 1D

@       IN SOA  ns1.offcn.com. admin.offcn.com. (

                       序列号---     20191022        ; serial

                       缓存的TTL        1D      ; refresh

                      刷新时间---       1H      ; retry

                       失效时间--        1W      ; expire

                                            3H )    ; minimum

        NS      ns1.offcn.com.        --ns1完全域名解析

        NS      ns2.offcn.com.

1       PTR     ns1.offcn.com.    ---1为10.1反向解析ns1.offcn.com

2       PTR     ns2.offcn.com.     

3       PTR     www.offcn.com   ---3会显示www的反向解析

4       PTR     mail.offcnn.com.

5       PTR     study.offcn.com

~                                            

6检测文件是否有错

格式:

named-checkzone     

named-checkzone <域名> <区域数据文件>  

示例:        

域名 offcn.com.    区域数据文件为 offcn.com.zone

 

named-checkzone  10.168.192.in-addr.arpa  10.168.192.arpa

域名        区域数据文件为

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

8修改文件属组 拥有者

chown  named:named  offcn.com.zone  10.168.192.arpa*

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

9重新加载 named 服务,服务端配置完成 查看日志 端口 关闭防火墙

systemctl restart named         --重启服务

nslk

1.)日志跟踪

tail -f /var/log/messages   --查看有没有错

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

2.)检测端口

netstat -antulp |grep :53   --查看DNS的 53端口

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

192.168.10.1   是之前在/etc/named.conf  中指定监听53端口的IP

先用tcp  后用udp

 

3).关闭防火墙,配置完毕

iptables -F

iptables -X

iptables -Z

systemctl stop firewalld

setenforce 0

10.客户端 更改首选DNS文件 验证解析主域名服务器

验证正向解析:nslookup www.offcn.com

验证泛域名解析:nslookup xxyyzz.offcn.com

验证反向解析: nslookup 192.168.10.1

 

修改首选DNS的配置文件 vim /etc/resolv.conf

DNS服务端的IP写到文件中

nameserver 192.168.10.1      ---客户机的DNS 指向服务器的IP

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

2.)解析地址 nslookup 正解

 

nslookup ns1.offcn.com

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

nslookup www.offcn.com

nslookup mail.offcn.com

nslookup study.offcn.com

nslookup ftp.offcn.com

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

 

 

验证反向解析

nslookup 192.168.10.1

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

3.)或者实验dig进行验证正向和反向解析

 

正向解析

dig -t  A www.offcn.com @192.168.10.1

dig解析  -t 正向   指定解析类型A ipv4   AAAA为ipv6的类型

 

www.offcn.com  @192.168.10.1

要解析的完全域名  192.168.10.1解析  

我现在要向10.1主机解析www.offcn.com的ip地址

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

反向解析

dig -x 192.168.10.1 @192.168.10.1

或者  dig -x 192.168.10.3 @192.168.10.1

10.3   10.4   10.5  等

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

3实验:构建从域名服务器DNS

1.配置网络,挂载镜像,安装bind软件

yum  -y install bind*        主域和从域网络 要相同

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

2.编写主配置文件vi /etc/named.conf  添加zone正反向解析

vi /etc/named.conf 编写主配置文件

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

zone "offcn.com" IN {

        type slave;

        masters {192.168.10.1;};

        file "slaves/offcn.com.zone";

};

 

zone "10.168.192.in-addr.arpa" IN {

        type slave;             ---类型

        masters {192.168.10.1;};

        file "slaves/10.168.192.arpa";     文件位置

};

 

 

3.检测文件是否错误   查看端口 和slaves文件目录权限

named-checkconf

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

查看端口状态和文件权限

cd /var/named/

ls -ld slaves/       --查看slaves目录的权限

 

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

netstat -antulp |grep :53查看端口   

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

4.重启服务查看区域数据文件是否成功下载

systemctl restart named重启 服务

rndc reload刷新  服务

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

5客户机 修改首选DNS 去验证解析

把客户机的DNS指向从域服务器的ip

 

vim /etc/resolv.conf     --编辑文件

把从域服务器的IP写入    

nameserver 192.168.10.2

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

解析

nslookup正解

nslookup  ns1.offcn.com

nslookup  www.offcn.com

nslookup  mail. offcn.com

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

nslookup反解

nslookup 192.168.10.5

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

dig -t A正解

Dig -t A www.offcn.com

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

dig -X 反解

dig -x 192.168.10.4

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

 

4实验:子域授权

关闭dnssec功能 ,在DNS主服务端 /etc/named.conf  

vim /etc/named.conf

关闭dnssec 功能:   ---加强DNS安全性

dnssec-enable no;

dnssec-validation no

服务端加入ns3子域主机IP

vim /var/named/offcn.com.zone    ns1服务端的配置文件

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

 

3.子域主机创建ujiuye.offcn.com的master区域

子域服务器10.254        做完配置 named-checkconf 检测是否有错

vim /etc/named.conf       全局配置文件

 

1.)关闭dnssec 功能:

dnssec-enable no;

dnssec-validation no

 

 2.)在下面添加创建ujiuye.offcn.com的master区域

zone "ujiuye.offcn.com" IN {

type master;

file "ujiuye.offcn.com.zone";

};

监听端口any  ipv6也是any    allow-query 允许访问的网段也是any

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

关闭dnssec 功能

 

 

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

 

 --添加zone

 linux之DNS主域,从域,缓存服务器的架设

 

 

3.)做完配置 named-checkconf 检测是否有错

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

 

4.)建立正解区域数据文件

cd /var/named/

cp named.localhost  ujiuye.offcn.com.zone    --建立ujiuye文件

vim ujiuye.offcn.com.zone

 linux之DNS主域,从域,缓存服务器的架设

 

 

解读文件

 $TTL 1D

@       IN SOA   ujiuye.offcn.com. admin.ujiuye.offcn.com (

                                        20191022        ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

        NS      ns1.ujiuye.offcn.com

ns1     A       192.168.10.254

www     A       192.168.10.253

ftp     A       192.168.10.252

mail    A       192.168.10.251

~    

5.更改拥有者 组的权限为named ,查看端口

chown named:named ujiuye.offcn.com.zonecd     --更改所属者 

 linux之DNS主域,从域,缓存服务器的架设

 

 

   

查看端口 netstat -antulp | grep :53

linux之DNS主域,从域,缓存服务器的架设

 

 

                           

6.重启named服务或重新加载

Systemctl  restart  named    --重启服务

Rndc  reload    --重新加载

 

7.检测

dig www.ujiuye.offcn.com @192.168.10.1

因为是委派,所以直接测192.168.10.1上查询

或者

nslookup www.ujiuye.offcn.com 192.168.10.1

 linux之DNS主域,从域,缓存服务器的架设

 

 

 

5.DNS文本 域名服务器 主域从域 缓存服务器 bind服务控制

DNS服务器软件BINDBerkeley Internet Name Domain,伯克利Internet名字域),Linux使用这个软件包来提供域名服务,该软件实现了DNS协议。

BIND的服务端软件是被称作named的守护进程

 

1.域名服务器

每一台DNS服务器都只负责管理一个有限范围(一个或几个域)内的主机域名和IP地址的对应关系,这些特定的DNS域或IP地址段称为“zone”(区域)。根据所管理的区域地址数据的来源不同DNS系统可以分为不同的类型。在同一台DNS服务器中,相对于不同的区域来说,也拥有不同的身份。常见的几种类型如下:

 

1.)缓存域名服务器

也称 唯高速缓存服务器,通过其他域名服务器查询获得域名 

IP 地址记录,将域名查询结果缓存到本地,提高重复查询时的速度

2.)主域名服务器

特定 DNS 区域的官方服务器,具有唯一性,负责维护该区域内所有域名 -> IP 地址的映射记录

3.)从域名服务器

也称 辅助域名服务器,其维护的 域名 -> IP 地址记录 来源于(下载于)主域名服务器

1BIND的安装和服务启停端口

BIND不是唯一能够提供域名服务的DNS服务程序,但它是应用最为广泛的,BIND可以运行在大多数Linux/UNIX主机中。

 

安装bind软件,

yum -y install bind*

 

BIND服务控制

BIND软件包安装完毕以后,会自动增加一个名为named的系统服务,通systemctl、service工具都可以控制DNS域名服务的运行。

启动named服务:

systemctl start named

注意:如果报错 调试命令为:    

tail -f /var/log/messages

 

查看端口:

netstat  -antulp | grep name             端口为:53

主要执行程序:

/usr/sbin/named

服务脚本:

/usr/lib/systemd/system/named.service  默认监听端口:53

2.BIND服务的  全局 区域 主配置文件 /etc/name.conf  

BIND软件构建域名服务涉及两种类型的配置文件:主配置文件区域数据文件主配置文件用于设置named服务的全局选项注册区域访问控制等各种运行参数

区域数据文件用于保存 DNS 解析记录的数据文件(正向或反向记录)

 

 

配置文件位置   /etc/name.conf         (安装的是bind-xxx软件包)

/var/named/chroot/etc/named.conf   (安装的是bind-chroot-xxx软件包)

 

主配置文件中,主要包括全局配置、区域配置两个部分,

每一条配置记录的行尾以分号“;”表示结束,

“#”号或“//”开始的部分表示注释文字(大段注释可以使用“/*......*/的格式”)

全局配置部分

 linux之DNS主域,从域,缓存服务器的架设

 

 

如上图所示:

设置 DNS 服务器的全局参数包括监听地址/端口、数据文件的默认位置等使用 options { …… }; 的配置段

options {

      listen-on port 53 { any; }; 监听地址和端口(53端口在等待请求)

listen-on-v6 port 53 {any; };

      directory       "/var/named";     区域数据文件放置目录

      allow-query     { localhost; };      允许使用的本DNS的网段

区域配置部分

 linux之DNS主域,从域,缓存服务器的架设

 

 

正向解析

zone "zzz.com" IN {       ---域   正向  “zzz.com” 的区域

    type master;      -- master 主区域 ,slave从区域    

    file "zzz.com"; 区域数据文件为zzz.com.zone 绝对路径在/var/named

     这个域 解析的是192.168.10.2/24的ip地址

allow-transfer {192.168.10.2};  允许这台主机下载named.ca的区域数据文件

};

反向解析

zone "10.168.192" IN {    ---域  反向”10.168.192” 的区域

type master;      --- master 主区域 ,slave从区域  

file "10.168.192.arpa";  ----区域数据文件为10.168.192.arpa

 

设置本服务器  提供域名解析的特定  DNS 区域包括

域名zonetype服务器角色、file数据文件名等,使用 zone “区域名” IN { …… }; 的配置段

 

3保存 DNS 解析记录的数据文件 zone  /var/named/

就是file指定的文件为   

/var/named/(安装的是bind-xxx软件包)

/var/named/chroot/var/named/(安装的是bind-chroot-xxx软件包)

 

每个区域数据文件对应一个DNS解析区域,文件名及内容由该域的管理员自行设置。(要与在全局配置中指定的文件名一样,不然会出错)

 

在区域数据文件中,主要包括TTL配置项、

SOA(Start Of Authority,授权信息开始)记录、地址解析记录。

文件中的注释信息以分号“;”开始。

全局 TTL 配置项及 SOA 记录

 linux之DNS主域,从域,缓存服务器的架设

 

 

如上图所示:

@”表示当前的DNS区域名相当于“offcn.com.”, $TTL(生存时间)

记录SOAStart Of Authority,授权信息开始)记录,表示offcn.com这个域由哪一台DNS服务负责解析,

分号“;” 开始的部分表示注释信息     admin.   =  admin@   . =@

 

域名正向解析记录vim /var/ named.localhost  -文件位置

 linux之DNS主域,从域,缓存服务器的架设

 

 

如上图所示:                         (ns1为服务器主机名)

@  为我们添加的域offcn.com   IN 指定因特网资源类型   @ 和IN可继承

@  IN  NS  ns1. offcn.com. :offcn.com这个域ns1.offcn.com来解                         .  代表根域

FTP  IN   CNAME   WWW      起别名   ftp = www

NS 域名服务器Name Server):记录当前区域的DNS服务器的主机

   IN  MX10  mail.offcn.com 表这个域负责邮件转发的是mail.offcn.com

MX 邮件交换Mail Exchange):记录当前区域的邮件服务器的主机,数字10表示优先级小的优先IN前面没有@  因为@可继承 ,所以省略.

添加域名和ip地址对应关系

ns 1   IN   A   192.168.10.3  --ns1启用的资源类型是A,A代表地址

ns1这台服务器对应的ipv4的IP地址为192.168.10.3   ns1=ns1.offcn.com.

A 地址(Address):记录正向解析条目,只用在正向解析区域中

ftp = www

CNAME 别名Canonical Name):记录某一个正向解析条目的其他名称

注:其中,NS、MX记录行首的“@”符号可以省略(默认继承SOA记录行首的@信息),但是必须保留一个空格或Tab制表位。

域名反向记录解析 vim /var/ named.loopback  --文件位置

 linux之DNS主域,从域,缓存服务器的架设

 

 

如上图所示:

1   表示192.168.10.1的ip   只写最后一位

PTR(启用的资源类型为PTR): 反向解析,  ip地址和域名的对应关系  

注意

如果漏写的话 反向解析出来就是    www.offcn.com.offcn.com.

PTR 指针(Point)记录只用在反向解析区域中,记录的第一列指定 IP 地址中的主机地址部分即可。

如上述中的4 IN PTR mail.offcn.com.”表示IP地址为192.168.10.4的主机的域名是maiil.offcn.com.

 

注:在区域数据配置文件中,凡是不以点号“.”结尾的主机地址,系统在查找地址记录时都会自动将当前的域名作为后缀。例如,若当前的DNS域为“offcn.com”,则在文件中的主机名“www”相当于“www.benet.com.”。

因此,当使用完整的FQDN地址,务必记得地址末尾的点号“.”不能省略

DNS域名系统 组织域 *域  域名解析过程迭代递归

DNS(Domain Name System )

Internet中使用IP地址来确定计算机的地址。

为了便于对网络地址的管理和分配所以采用了域名系统

域名: 通过为每台主机建立IP地址与域名之间的映射关系,用户可以避开难记的IP地址,而使用域名来唯一标识网络中的计算机。域名和IP地址之间的关系,就像是某人的姓名和身份证号码之间的关系,显然,记住名字比记住身份证号码容易的多。

 

DNS解析过程

wwwbaidu.com  首先pc发送请求给DNS服务器  ,然后DNS负责把baidu.com所对应的IP返回给我们主机, 最后我们的主机通过百度的IP去上网,

把域名转换为ip地址的过程称为DNS解析过程.

 

2.主机名和域名的区别:

主机名是内网的名字   完全域名是外网的名字(主机名+域名)

主机名和域名其实是两个完全可以不同的名字,但是有很多软件(如邮件系统postfix)会默认认为它们一致。

DNS中,域名包括 根域、*域、二级域和主机名。如下图

linux之DNS主域,从域,缓存服务器的架设 

全世界共有13台DNS根域服务器。      

*域:由Internet名称授权机构管理,有两种常见的类型。如下:

 

1)组织域(*域)

.com(商业) .org (组织)  .edu(教育)  .gov (*)  .net(通讯)  .mil(军事)  .info(信息)

 

2)国家或地区*域:

cn(中国) 、 hk(中国香港) 、 uk(英国) 等

 

FQDN=主机名.DNS后缀(FQDN,Fully Qualified Domain Name,完全合格的域名/全称域名)

     完全域名 www.zzz.com.

     www.  为主机名    zzz.com 域名    加起来就是完全域名

 

 

3.域名解析过程

查询 www.offcn.com过程

linux之DNS主域,从域,缓存服务器的架设 

 

从查询方式分类(递归迭代)

递归查询:客户端得到结果只能是成功或失败  得到一个查询的最终结果

迭代查询:DNS服务器如客户机请求数据   则返回正确地址

DNS服务器没有请求数据 则返回一个指针,指示下一步查询的方向

从查询内容分类(正向反向)

正向解析:根据主机名称(域名)查找对应的 IP 地址

反向解析:根据 IP 地址对应的主机域名

 

 

1.实验1制作缓存服务器

1.)安装bind软件   查看相关软件包

cd /var/named/配置文件位置   

yum -y install bind*

linux之DNS主域,从域,缓存服务器的架设 

 

rpm -qa | grep “^bind”安装好 查看软件包

linux之DNS主域,从域,缓存服务器的架设 

 

相关安装包为:

bind-9.9.4-37.el7.x86_64.rpm:提供了域名服务的主要程序及相关文件

bind-chroot-9.9.4-37.el7.x86_64.rpm:BIND服务提供一个伪装的根目录(将/var/named/chroot/文件夹作为BIND的根目录),以提高安全性。

bind-libs-9.9.4-37.el7.x86_64.rpm:提供了bind、bind-utils需要使用的函数   libs 函数库   

bind-utils-9.9.4-37.el7.x86_64.rpm:提供了对DNS服务器的测试工具程序,如nslookup等   utils测试程序

 

2.)启动服务BIND  查看端口   服务控制(服务端)

BIND软件包安装完毕以后,会自1动增加一个名为named的系统服务,通systemctl、service工具都可以控制DNS域名服务的运行。

 

systemctl start named启动named服务:

tail -f /var/log/messages注意:如果报错 调试命令  查看日志排错    

netstat  -antulp | grep name           查看端口  :53

/usr/sbin/named主要执行程序

/usr/lib/systemd/system/named.service服务脚本:默认监听端口:53

 

linux之DNS主域,从域,缓存服务器的架设 

3.)对配置文件语法检查

named-checkconf 工具

named-checkconf    [可指定主配置文件]

 

named-checkzone 工具

named-checkzone  <域名> <区域数据文>  

示例:        

域名 offcn.com.    区域数据文件为 offcn.com.zone

linux之DNS主域,从域,缓存服务器的架设 

 

4.)修改网卡和网络(服务器端) 开启dhcp获取IP的功能 虚拟机改为NAT

cd /etc/sysconfig/network-scripts/

vim ifcfg-ens33 把自动获取开启,注释ip和掩码

 

systemctl restart network重启网络   

ifconfig     查看网卡  会看到一个自动分配的IP

linux之DNS主域,从域,缓存服务器的架设 

虚拟机改为NAT模式,使其能上网

linux之DNS主域,从域,缓存服务器的架设 

 

5.)ping百度的地址.验证能否上网 (服务器端)

linux之DNS主域,从域,缓存服务器的架设 

 

nslookup www.baidu.com   

Server:192.168.100.2        ---dns解析的服务器100.2 (可用)

Address:192.168.100.2#53

 

Non-authoritative answer:

www.baidu.comcanonical name = www.a.shifen.com.

Name:www.a.shifen.com

Address: 182.61.200.7     

Name:www.a.shifen.com

Address: 182.61.200.6   

 

 

nslookup  www.baidu.com  192.168.100.2   要解析的完全域名

要查询百度的ip地址        dns服务器的IP地址为192.168.100.2

 

linux之DNS主域,从域,缓存服务器的架设 

 

6.)配置客户机的ip,使其自动获取  关闭客户机防火墙

客户机的IP

linux之DNS主域,从域,缓存服务器的架设 

 

linux之DNS主域,从域,缓存服务器的架设 

 

7)去服务器端改 /etc/named.conf  dns配置文件 监听端口 (any)

vim /etc/named.conf文件位置   

 

允许任何人来访问

linux之DNS主域,从域,缓存服务器的架设 

linux之DNS主域,从域,缓存服务器的架设 

查看这个

linux之DNS主域,从域,缓存服务器的架设 

 

8.)重启服务  查看端口  确认根域的区域数据文件 named.ca

重启服务: systemctl restart named

重新加载   rndc reload

服务器缓存已经建好

1.启动named服务,并确定named服务的端口监听状态。

若服务启动失败或发现没有正常监听UDP53端口,   可以根据错误提示信息(或/var/log/messages文件中的日志记录)排除错误。

tail -f /var/log/messages注意:如果报错 调试命令   

systemctl start named   ---启动named服务

netstat -anpult | grep named ---确认查看named服务的端口监听状态

 

linux之DNS主域,从域,缓存服务器的架设 

 

确认根域的区域数据文件 named.ca

 

根区域的区域数据文件默认位于文件/var/named/named.ca中,

该文件记录了Internet中13台根域服务器的域名和IP地址等相关信息。

 

 grep -v "^;" /var/named/named.ca | grep -v ^$

筛选文件中, 不要开头是 分号的”;”  也不要空行  ,其余保留

A为ipv4    AAAA为ipv6

linux之DNS主域,从域,缓存服务器的架设 

 

9.)修改客户机首选DNS

vim /etc/resolv.conf 首选DNS配置文件   把之前内容注释掉  备份  

 

 

192.168.100.137  为服务器的ip   作为客户端的DNS

设置dns   指向   服务器的ip

linux之DNS主域,从域,缓存服务器的架设 

 

10.)去客户机解析验证缓存是否成功

 nslookup www.baidu.com     解析百度的IP

 

linux之DNS主域,从域,缓存服务器的架设 

 

2实验:构建主DNS

DNS架设   --需要两台虚拟机,  主DNS服务端和客户机

1.服务端 配置网卡 安装bind*软件 增加映射/etc/hostname  更改主机名字

配置主,,从DNS服务器的IP地址,使两者可相互通信 并更改主机名字,

hostnamectl set-hostname ns1.offcn.com     --永久改主机名字

hostname  --查看

linux之DNS主域,从域,缓存服务器的架设 

linux之DNS主域,从域,缓存服务器的架设 

2.)增加映射

 vim  /etc/hosts              编辑文件  增加主机映射

192.168.10.1 ns1.offcn.com

192.168.10.2 ns2.offcn.com

linux之DNS主域,从域,缓存服务器的架设 

验证

ping ns1.offcn.com

linux之DNS主域,从域,缓存服务器的架设 

安装软件查看配置yum环境 , 挂载光盘

 

yum clean all   --清空缓存

yum  -y install bind*  --安装          卸载安装包:yum -y  remove bind

linux之DNS主域,从域,缓存服务器的架设 

2.主配置文件 named.conf 修改监听端口 添加正反解zone域

vim /etc/named.conf    --修改主DNS的配置

 

options {                                       ---修改监听端口

listen-on port 53 { any; };    ---允许监听53端口的ip ,any是本机任何人

listen-on-v6 port 53 { any; };    ----ipv6 允许监听53端口的ip

directory "/var/named";      ---设置域名服务的工作目录

dump-file "/var/named/data/cache_dump.db";   --运行rndc  dumpdb备份缓存资料后保存的文件路径和名称

statistics-file "/var/named/data/named_stats.txt";     --运行rndc stats,统计信息的保存路径和名称

memstatistics-file "/var/named/data/named_mem_stats.txt";

allow-query   { any; };   -指定那个主机可以查询服务器的权威解析记录

 

添加一个正解  一个反解 

zone "offcn.com" IN {       ---zone定义域,希望维护的域名解析

type master;     ----类型

masters{ 192.168.10.2;};  --允许下载区域文件的指定服务器IP指定主服务器的ip

file "offcn.com.zone";    ---下载的区域文件位置, 需要去创建named.ca文件

下载的保存到这里面

};

zone "10.168.192.in-addr.arpa" IN {

        type master;

        file "10.168.192.arpa";

        allow-transfer {192.168.10.2;};

};

Type

Hint:当本地找不到解析的时侯,可以查询根域名服务器

Master : 定义权威域名服务器

Slave:定义辅助域名服务器

Forwad :定义转发域名服务器

linux之DNS主域,从域,缓存服务器的架设 

其中 loaded serial    20191022  是序列号

linux之DNS主域,从域,缓存服务器的架设 

3.建立正、反向 区域数据文件zone

根据named.conf中的zone区域设置,

分别建立正向区域数据文件offcn.com.zone,

反向区域数据文件10.168.192.arpa。

配置文件可以参考区域数据文件/var/named/named.localhost。

注意:要将区域数据文件的所有者改为named,所属的组改为:named,才能解析出ip地址

 

创建正向解析数据文件  vim  /var/named/offcn.com.zone

 

1.)主要解析记录

主域名服务器:ns1.offcn.com.,192.168.10.1

从域名服务器:ns2.offcn.com.,192.168.10.2

两台服务器均能够提供 offcn.com 区域的域名解析

网站服务器“www.offcn.com.”,IP地址为“192.168.10.3”

邮件服务器mail.offcn.com.”,IP地址为“192.168.10.4”

在线培训站点服务器study.offcn.com.”,IP地址为“192.168.10.5”

主域名服务器ns1.offcn.com.”,IP地址为“192.168.10.1”

从域名服务器“ns2.offcn.com.”,IP地址为“192.168.10.2”

 

 

cp named.localhost  offcn.com.zone    --前面指定文件为offcn.con.zone

 

vim /var/name/offcn.com.zone           --新增正向和反向的数据文件  file指定位置

 

vim offcn.com.zone

 

linux之DNS主域,从域,缓存服务器的架设 

注意:泛域名解析

在后面要加入泛域名解析:

*  IN   A   192.168.10.2

泛域名是指:* 代表了所有主机名

还可以增加别名:

ftp   IN   CAME www

因为之前指定了位置  所以新建位置要和配置位置要一样

 

$TTL 1D

@       IN SOA  ns1.offcn.com. admin.offcn.com. (     -----完全域名

                      序列号  ----    20191022     ; serial

                      缓存的TTL---     1D      ; refresh

                      刷新时间--        1H      ; retry

                      失效时间---       1W      ; expire

                                        3H )    ; minimum

        NS      ns1.offcn.com.     完整的域名,ns1为主机吗,后面为域名

        NS      ns2.offcn.com.     

ns1     A       192.168.10.1      ---ns1的ip配置

ns2     A       192.168.10.2

www   A       192.168.10.3    

mail    A        192.168.10.4      ---邮件

study   A        192.168.10.5     ---学习

ftp     CNAME   www       ---ftp的别名为www,搜ftp会显示www的ip

*       A       192.168.10.1   --泛域名解析,如kkk.offcn.com会显示ns1的IP  kkk为 *任意

4.语法检查对正向反向配置文件检测

正向解析

named-checkconf   

named-checkconf   [可指定主配置文件]

linux之DNS主域,从域,缓存服务器的架设 

反向解析

named-checkzone    

named-checkzone <域名> <区域数据文件>  

示例:        域名 offcn.com.    区域数据文件为 offcn.com.zone

5.建立反向解析

文件位置:  /var /named

cp offcn.com.zone   10.168.192.arpa  --改写前面配置好的  PTR反向解析

或者新建为cp named.loopback 10.168.192.arpa

 

vim 10.168.192.arpa   ---编辑反向解析文件

linux之DNS主域,从域,缓存服务器的架设 

$TTL 1D

@       IN SOA  ns1.offcn.com. admin.offcn.com. (

                       序列号---     20191022        ; serial

                       缓存的TTL        1D      ; refresh

                      刷新时间---       1H      ; retry

                       失效时间--        1W      ; expire

                                            3H )    ; minimum

        NS      ns1.offcn.com.        --ns1完全域名解析

        NS      ns2.offcn.com.

1       PTR     ns1.offcn.com.    ---1为10.1反向解析ns1.offcn.com

2       PTR     ns2.offcn.com.     

3       PTR     www.offcn.com   ---3会显示www的反向解析

4       PTR     mail.offcnn.com.

5       PTR     study.offcn.com

~                                            

6检测文件是否有错

格式:

named-checkzone     

named-checkzone <域名> <区域数据文件>  

示例:        

域名 offcn.com.    区域数据文件为 offcn.com.zone

 

named-checkzone  10.168.192.in-addr.arpa  10.168.192.arpa

域名        区域数据文件为

linux之DNS主域,从域,缓存服务器的架设 

 

8修改文件属组 拥有者

chown  named:named  offcn.com.zone  10.168.192.arpa*

linux之DNS主域,从域,缓存服务器的架设 

 

9重新加载 named 服务,服务端配置完成 查看日志 端口 关闭防火墙

systemctl restart named         --重启服务

nslk

1.)日志跟踪

tail -f /var/log/messages   --查看有没有错

linux之DNS主域,从域,缓存服务器的架设 

2.)检测端口

netstat -antulp |grep :53   --查看DNS的 53端口

linux之DNS主域,从域,缓存服务器的架设 

192.168.10.1   是之前在/etc/named.conf  中指定监听53端口的IP

先用tcp  后用udp

 

3).关闭防火墙,配置完毕

iptables -F

iptables -X

iptables -Z

systemctl stop firewalld

setenforce 0

10.客户端 更改首选DNS文件 验证解析主域名服务器

验证正向解析:nslookup www.offcn.com

验证泛域名解析:nslookup xxyyzz.offcn.com

验证反向解析: nslookup 192.168.10.1

 

修改首选DNS的配置文件 vim /etc/resolv.conf

DNS服务端的IP写到文件中

nameserver 192.168.10.1      ---客户机的DNS 指向服务器的IP

linux之DNS主域,从域,缓存服务器的架设 

 

2.)解析地址 nslookup 正解

 

nslookup ns1.offcn.com

linux之DNS主域,从域,缓存服务器的架设 

 

nslookup www.offcn.com

nslookup mail.offcn.com

nslookup study.offcn.com

nslookup ftp.offcn.com

linux之DNS主域,从域,缓存服务器的架设 

 

 

linux之DNS主域,从域,缓存服务器的架设 

 

验证反向解析

nslookup 192.168.10.1

linux之DNS主域,从域,缓存服务器的架设 

 

3.)或者实验dig进行验证正向和反向解析

 

正向解析

dig -t  A www.offcn.com @192.168.10.1

dig解析  -t 正向   指定解析类型A ipv4   AAAA为ipv6的类型

 

www.offcn.com  @192.168.10.1

要解析的完全域名  192.168.10.1解析  

我现在要向10.1主机解析www.offcn.com的ip地址

linux之DNS主域,从域,缓存服务器的架设 

反向解析

dig -x 192.168.10.1 @192.168.10.1

或者  dig -x 192.168.10.3 @192.168.10.1

10.3   10.4   10.5  等

linux之DNS主域,从域,缓存服务器的架设 

3实验:构建从域名服务器DNS

1.配置网络,挂载镜像,安装bind软件

yum  -y install bind*        主域和从域网络 要相同

linux之DNS主域,从域,缓存服务器的架设 

linux之DNS主域,从域,缓存服务器的架设 

 

2.编写主配置文件vi /etc/named.conf  添加zone正反向解析

vi /etc/named.conf 编写主配置文件

linux之DNS主域,从域,缓存服务器的架设 

 

zone "offcn.com" IN {

        type slave;

        masters {192.168.10.1;};

        file "slaves/offcn.com.zone";

};

 

zone "10.168.192.in-addr.arpa" IN {

        type slave;             ---类型

        masters {192.168.10.1;};

        file "slaves/10.168.192.arpa";     文件位置

};

 

 

3.检测文件是否错误   查看端口 和slaves文件目录权限

named-checkconf

linux之DNS主域,从域,缓存服务器的架设 

 

查看端口状态和文件权限

cd /var/named/

ls -ld slaves/       --查看slaves目录的权限

linux之DNS主域,从域,缓存服务器的架设 

 

netstat -antulp |grep :53查看端口   

linux之DNS主域,从域,缓存服务器的架设 

4.重启服务查看区域数据文件是否成功下载

systemctl restart named重启 服务

rndc reload刷新  服务

linux之DNS主域,从域,缓存服务器的架设 

5客户机 修改首选DNS 去验证解析

把客户机的DNS指向从域服务器的ip

 

vim /etc/resolv.conf     --编辑文件

把从域服务器的IP写入    

nameserver 192.168.10.2

linux之DNS主域,从域,缓存服务器的架设 

 

解析

nslookup正解

nslookup  ns1.offcn.com

nslookup  www.offcn.com

nslookup  mail. offcn.com

linux之DNS主域,从域,缓存服务器的架设 

nslookup反解

nslookup 192.168.10.5

linux之DNS主域,从域,缓存服务器的架设 

 

dig -t A正解

Dig -t A www.offcn.com

linux之DNS主域,从域,缓存服务器的架设 

dig -X 反解

dig -x 192.168.10.4

linux之DNS主域,从域,缓存服务器的架设 

 

 

4实验:子域授权

关闭dnssec功能 ,在DNS主服务端 /etc/named.conf  

vim /etc/named.conf

关闭dnssec 功能:   ---加强DNS安全性

dnssec-enable no;

dnssec-validation no

服务端加入ns3子域主机IP

vim /var/named/offcn.com.zone    ns1服务端的配置文件

 

linux之DNS主域,从域,缓存服务器的架设 

 

3.子域主机创建ujiuye.offcn.com的master区域

子域服务器10.254        做完配置 named-checkconf 检测是否有错

vim /etc/named.conf       全局配置文件

 

1.)关闭dnssec 功能:

dnssec-enable no;

dnssec-validation no

 

 2.)在下面添加创建ujiuye.offcn.com的master区域

zone "ujiuye.offcn.com" IN {

type master;

file "ujiuye.offcn.com.zone";

};

监听端口any  ipv6也是any    allow-query 允许访问的网段也是any

 

linux之DNS主域,从域,缓存服务器的架设 

关闭dnssec 功能:

linux之DNS主域,从域,缓存服务器的架设  --

 --添加zone

 

linux之DNS主域,从域,缓存服务器的架设 

3.)做完配置 named-checkconf 检测是否有错

linux之DNS主域,从域,缓存服务器的架设 

 

 

4.)建立正解区域数据文件

cd /var/named/

cp named.localhost  ujiuye.offcn.com.zone    --建立ujiuye文件

vim ujiuye.offcn.com.zone

linux之DNS主域,从域,缓存服务器的架设 

解读文件

 $TTL 1D

@       IN SOA   ujiuye.offcn.com. admin.ujiuye.offcn.com (

                                        20191022        ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

        NS      ns1.ujiuye.offcn.com

ns1     A       192.168.10.254

www     A       192.168.10.253

ftp     A       192.168.10.252

mail    A       192.168.10.251

~    

5.更改拥有者 组的权限为named ,查看端口

chown named:named ujiuye.offcn.com.zonecd     --更改所属者 

linux之DNS主域,从域,缓存服务器的架设 

   

查看端口 netstat -antulp | grep :53

 linux之DNS主域,从域,缓存服务器的架设                          

6.重启named服务或重新加载

Systemctl  restart  named    --重启服务

Rndc  reload    --重新加载

 

7.检测

dig www.ujiuye.offcn.com @192.168.10.1

因为是委派,所以直接测192.168.10.1上查询

或者

nslookup www.ujiuye.offcn.com 192.168.10.1

linux之DNS主域,从域,缓存服务器的架设 

 

5.DNS文本 域名服务器 主域从域 缓存服务器 bind服务控制

DNS服务器软件BINDBerkeley Internet Name Domain,伯克利Internet名字域),Linux使用这个软件包来提供域名服务,该软件实现了DNS协议。

BIND的服务端软件是被称作named的守护进程

 

1.域名服务器

每一台DNS服务器都只负责管理一个有限范围(一个或几个域)内的主机域名和IP地址的对应关系,这些特定的DNS域或IP地址段称为“zone”(区域)。根据所管理的区域地址数据的来源不同DNS系统可以分为不同的类型。在同一台DNS服务器中,相对于不同的区域来说,也拥有不同的身份。常见的几种类型如下:

 

1.)缓存域名服务器

也称 唯高速缓存服务器,通过其他域名服务器查询获得域名 

IP 地址记录,将域名查询结果缓存到本地,提高重复查询时的速度

2.)主域名服务器

特定 DNS 区域的官方服务器,具有唯一性,负责维护该区域内所有域名 -> IP 地址的映射记录

3.)从域名服务器

也称 辅助域名服务器,其维护的 域名 -> IP 地址记录 来源于(下载于)主域名服务器

1BIND的安装和服务启停端口

BIND不是唯一能够提供域名服务的DNS服务程序,但它是应用最为广泛的,BIND可以运行在大多数Linux/UNIX主机中。

 

安装bind软件,

yum -y install bind*

 

BIND服务控制

BIND软件包安装完毕以后,会自动增加一个名为named的系统服务,通systemctl、service工具都可以控制DNS域名服务的运行。

启动named服务:

systemctl start named

注意:如果报错 调试命令为:    

tail -f /var/log/messages

 

查看端口:

netstat  -antulp | grep name             端口为:53

主要执行程序:

/usr/sbin/named

服务脚本:

/usr/lib/systemd/system/named.service  默认监听端口:53

2.BIND服务的  全局 区域 主配置文件 /etc/name.conf  

BIND软件构建域名服务涉及两种类型的配置文件:主配置文件区域数据文件主配置文件用于设置named服务的全局选项注册区域访问控制等各种运行参数

区域数据文件用于保存 DNS 解析记录的数据文件(正向或反向记录)

 

 

配置文件位置   /etc/name.conf         (安装的是bind-xxx软件包)

/var/named/chroot/etc/named.conf   (安装的是bind-chroot-xxx软件包)

 

主配置文件中,主要包括全局配置、区域配置两个部分,

每一条配置记录的行尾以分号“;”表示结束,

“#”号或“//”开始的部分表示注释文字(大段注释可以使用“/*......*/的格式”)

全局配置部分

linux之DNS主域,从域,缓存服务器的架设 

如上图所示:

设置 DNS 服务器的全局参数包括监听地址/端口、数据文件的默认位置等使用 options { …… }; 的配置段

options {

      listen-on port 53 { any; }; 监听地址和端口(53端口在等待请求)

listen-on-v6 port 53 {any; };

      directory       "/var/named";     区域数据文件放置目录

      allow-query     { localhost; };      允许使用的本DNS的网段

区域配置部分

linux之DNS主域,从域,缓存服务器的架设 

正向解析

zone "zzz.com" IN {       ---域   正向  “zzz.com” 的区域

    type master;      -- master 主区域 ,slave从区域    

    file "zzz.com"; 区域数据文件为zzz.com.zone 绝对路径在/var/named

     这个域 解析的是192.168.10.2/24的ip地址

allow-transfer {192.168.10.2};  允许这台主机下载named.ca的区域数据文件

};

反向解析

zone "10.168.192" IN {    ---域  反向”10.168.192” 的区域

type master;      --- master 主区域 ,slave从区域  

file "10.168.192.arpa";  ----区域数据文件为10.168.192.arpa

 

设置本服务器  提供域名解析的特定  DNS 区域包括

域名zonetype服务器角色、file数据文件名等,使用 zone “区域名” IN { …… }; 的配置段

 

3保存 DNS 解析记录的数据文件 zone  /var/named/

就是file指定的文件为   

/var/named/(安装的是bind-xxx软件包)

/var/named/chroot/var/named/(安装的是bind-chroot-xxx软件包)

 

每个区域数据文件对应一个DNS解析区域,文件名及内容由该域的管理员自行设置。(要与在全局配置中指定的文件名一样,不然会出错)

 

在区域数据文件中,主要包括TTL配置项、

SOA(Start Of Authority,授权信息开始)记录、地址解析记录。

文件中的注释信息以分号“;”开始。

全局 TTL 配置项及 SOA 记录

linux之DNS主域,从域,缓存服务器的架设 

如上图所示:

@”表示当前的DNS区域名相当于“offcn.com.”, $TTL(生存时间)

记录SOAStart Of Authority,授权信息开始)记录,表示offcn.com这个域由哪一台DNS服务负责解析,

分号“;” 开始的部分表示注释信息     admin.   =  admin@   . =@

 

域名正向解析记录vim /var/ named.localhost  -文件位置

linux之DNS主域,从域,缓存服务器的架设 

如上图所示:                         (ns1为服务器主机名)

@  为我们添加的域offcn.com   IN 指定因特网资源类型   @ 和IN可继承

@  IN  NS  ns1. offcn.com. :offcn.com这个域ns1.offcn.com来解                         .  代表根域

FTP  IN   CNAME   WWW      起别名   ftp = www

NS 域名服务器Name Server):记录当前区域的DNS服务器的主机

   IN  MX10  mail.offcn.com 表这个域负责邮件转发的是mail.offcn.com

MX 邮件交换Mail Exchange):记录当前区域的邮件服务器的主机,数字10表示优先级小的优先IN前面没有@  因为@可继承 ,所以省略.

添加域名和ip地址对应关系

ns 1   IN   A   192.168.10.3  --ns1启用的资源类型是A,A代表地址

ns1这台服务器对应的ipv4的IP地址为192.168.10.3   ns1=ns1.offcn.com.

A 地址(Address):记录正向解析条目,只用在正向解析区域中

ftp = www

CNAME 别名Canonical Name):记录某一个正向解析条目的其他名称

注:其中,NS、MX记录行首的“@”符号可以省略(默认继承SOA记录行首的@信息),但是必须保留一个空格或Tab制表位。

域名反向记录解析 vim /var/ named.loopback  --文件位置

linux之DNS主域,从域,缓存服务器的架设 

如上图所示:

1   表示192.168.10.1的ip   只写最后一位

PTR(启用的资源类型为PTR): 反向解析,  ip地址和域名的对应关系  

注意

如果漏写的话 反向解析出来就是    www.offcn.com.offcn.com.

PTR 指针(Point)记录只用在反向解析区域中,记录的第一列指定 IP 地址中的主机地址部分即可。

如上述中的4 IN PTR mail.offcn.com.”表示IP地址为192.168.10.4的主机的域名是maiil.offcn.com.

 

注:在区域数据配置文件中,凡是不以点号“.”结尾的主机地址,系统在查找地址记录时都会自动将当前的域名作为后缀。例如,若当前的DNS域为“offcn.com”,则在文件中的主机名“www”相当于“www.benet.com.”。

因此,当使用完整的FQDN地址,务必记得地址末尾的点号“.”不能省略

linux之DNS主域,从域,缓存服务器的架设

上一篇:教你如何解锁macOS10.15的系统分区


下一篇:100个Shell脚本——【脚本1】打印形状