DNS服务器搭建及配置

域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址。域名系统其实就是名字系统。为什么不叫“名字”而叫“域名”呢?这是因为在这种因特网的命名系统中使用了许多的“域(domain)”,因此就出现了“域名”这个名词。“域名系统”明确地指明这种系统是应用在因特网中。

1、因特网的域名结构

由于因特网的用户数量较多,所以因特网在命名时采用的是层次树状结构的命名方法。任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名(domain name)。这里,“域”(domain)是名字空间中一个可被管理的划分。

域名只是逻辑概念,并不代表计算机所在的物理地点。分为三大类:

(1)国家顶级域名:采用ISO3166的规定。如:cn代表中国,us代表美国,uk代表英国,等等。国家域名又常记为ccTLD(cc表示国家代码contry-code)。

(2)通用顶级域名:最常见的通用顶级域名有7个,即:com(公司企业),net(网络服务机构),org(非营利组织),int(国际组织),gov(美国的政府部门),mil(美国的军事部门)。

(3)基础结构域名(infrastructure domain):这种顶级域名只有一个,即arpa,用于反向域名解析,因此称为反向域名。

现如今全球一共投放13个根服务器   

服务器主要用来管理互联网的主目录,全世界只有13台。1个为主根服务器,放置在美国。其余12个均为辅根服务器,其中9个放置在美国,欧洲2个,位于英国和瑞典,亚洲1个,位于日本。所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理,负责全球互联网域名根服务器、域名体系和IP地址等的管理。 这13台根服务器可以指挥Firefox或互联网 Explorer这样的Web浏览器和电子邮件程序控制互联网通信。换句话说——攻击整个因特网最有力、最直接,也是最致命的方法恐怕就是攻击根域名服务器了。

由于根服务器中有经美国政府批准的260个左右的互联网后缀(如.com、.net等)和一些国家的指定符(如法国的.fr、挪威的.no等),美国政府对其管理拥有很大发言权。

 

在与现有IPv4根服务器体系架构充分兼容基础上,由下一代互联网国家工程中心牵头发起的“雪人计划”于2016年在美国、日本、印度、俄罗斯、德国、法国等全球16个国家完成25台IPv6(互联网协议第六版)根服务器架设,事实上形成了13台原有根加25台IPv6根的新格局,为建立多边、民主、透明的国际互联网治理体系打下坚实基础。

 

发展:

Hosts文件   ---------------需要不停地添加域名

1.周期性任务  ---------------在指定时间自动的去写(自动化)

2.server       ---------------东西太多(性能)

3.分布式数据库 -------------全球各地分放

 

查找方式:

递归    ------计算机只发送一次请求

迭代    -----多次

 

实际解析分为两段,一段递归一段迭代

此处递归与迭代查询类似于网络中的路由查询

 

正向解析:FQDN---->Ip

Ip            域名       (一对多)

反向解析:IP----->FQDN

 

主DNS服务器:数据修改 (接受用户请求返回数据)  master

辅助dns服务器: 定期请求数据同步    slave

缓存dns服务器:   只缓存dns数据    hint

转发器:缓存服务器去掉缓存功能   forward

 

提供dns服务的套件叫bind但执行服务名称的是named  

yum install bind -y

rpm -ql bind  查看

bind:

/etc/named.conf

进程的工作属性

区域的定义

/etc/rndc.key:        remount named domain controller密钥文件

/etc/rndc.conf:        相关配置文件

区域数据文件,需要手动创建

/var/named/zidingyi.zone

 

配置检查脚本工具

/usr/sbin/named-checkconf

 

区域配置检查工具

/usr/sbin/named-checkzone

 

#全球十三个根服务器的相关信息;

/var/named/named.ca  区域文件dns数据库

如果没有该文件,可用以下命令重新创建

dig -t NS .        #查询根域

dig -t NS . @a.root-servers.net.        #指定根服务器进行查询

 

配置文件详解:

dns的主配置文件,作为dns的设定档,将我自己的设定档案列出来然后逐部分进行解释。

注意格式:"//"      "/*     */"   ";"结尾

该文件属主root,named用户组

###################################3

#全局选项

options {

#定义监听端口,如果所有地址都监听,则只写端口

        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";分配统计目录

#只允许本地主机进行查询

        allow-query     { localhost; };

#允许递归

        recursion yes;

指定可以递归的范围

#allow-recursion { 192.168.0.0/16; };

logging { //指定日志记录分类和他们的目标位置

};

Zone{  定义区域,一个zone定义一个区域

type hint;
};

#包含其他配置文件

include "/etc/named.rfc1912.zones";

include "/etc/named.root.key";

 

区域类型:

主区域:主DNS,master

从区域:从DNS,slave

缓存区域:hint,在找不到相关信息的时候去从根查找,标识根的地址

转发区域:forward,转发到指定区域,而不是指向根

DNS在53端口上监听请求并提供响应的服务。出于性能的考虑,DNS查询请求用UDP协议交互并且每个请求的大小小于512字节,但是如果返回的请求大小大于512字节,交互双方会协商使用TCP协议。

 

资源记录名称:(数据库中的每一个条目)

SOA(起始授权记录) 记录提供有关dns区域工作方式的信息 -----具体负责哪个区域的解析

NS  将自己的域名映射到DNS  将域名最终映射到哪一台主机(由哪一台主机去解析当前所定义的域主机)

A  (ipv4地址记录) 资源记录将主机名映射到ipv4地址。

CNAME  (规范名称)记录域别名

MX 邮件交换记录

PTR指针记录 将IPV4 IPV6地址映射到主机名 (用于反向DNS)

AAAA  (IPV6 地址记录)  资源记录(四A记录)将主机名映射到ipv6地址。

 

五种定义的信息

serial number:   序列号 定义当前使用的数据序列号    sn遵循“年+月+日+编号” ·

refresh:  定义检查间隔时间  (上次和这次变化的时间)

retry:        重试时间  < 检查时间>        

expire:        过期时间  缓存放多久过期        

nagative enswer TTL:  否定答案的缓存时长  (如果解析在规定时间里没有解析到答案会否定解析不到)

 时间单位:M(分钟)、H(小时)、D(天)、W(周),默认单位是秒

 

软件安装及配置

yum install bind -y

编辑主配置文件

[root@localhost ~]# cat /etc/named.conf

options {

listen-on port 53 { 192.168.1.102; };

directory "/var/named";

};

zone "baidu.com" IN {

type master;

file "named.baidu.com";

};

正向解析

[root@localhost ~]# cat /var/named/named.baidu.com

$TTL 1D

@ IN SOA @ admin.admin.com.(

0

1D

1H

1W

3H )

IN NS ns.baidu.com.

IN MX 10 mail.baidu.com.

ns IN A 192.168.1.102

www IN A 192.168.1.10

ftp IN A 192.168.1.20

 

测试解析

[root@localhost ~]# dig -t NS baidu.com

 

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t NS baidu.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24597

;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 6

 

;; OPT PSEUDOSECTION:

; EDNS: version: 0, flags:; udp: 4096

;; QUESTION SECTION:

;baidu.com. IN NS

 

;; ANSWER SECTION:

baidu.com. 86400 IN NS dns.baidu.com.

baidu.com. 86400 IN NS ns4.baidu.com.

baidu.com. 86400 IN NS ns2.baidu.com.

baidu.com. 86400 IN NS ns7.baidu.com.

baidu.com. 86400 IN NS ns3.baidu.com.

 

;; ADDITIONAL SECTION:

dns.baidu.com. 71700 IN A 202.108.22.220

ns2.baidu.com. 71668 IN A 220.181.37.10

ns3.baidu.com. 73527 IN A 112.80.248.64

ns4.baidu.com. 74196 IN A 14.215.178.80

ns7.baidu.com. 86370 IN A 180.76.76.92

 

;; Query time: 31 msec

;; SERVER: 61.153.81.74#53(61.153.81.74)

;; WHEN: 二 1月 22 15:11:19 CST 2019

;; MSG SIZE  rcvd: 208

 

反向解析

[root@localhost ~]# cat /var/named/named.192.168.1

$TTL 1D

@ IN SOA @ admin.admin.com. (

0

1D

3H

1W

1D )

IN NS ns.baidu.com.

102 IN PTR ns.baidu.com.

10 IN PTR www.baidu.com.

20 IN PTR ftp.www.baidu.com.

 

[root@localhost ~]# cat /etc/named.conf

options {

listen-on port 53 { 192.168.1.102; };

directory "/var/named";

};

zone "baidu.com" IN {

type master;

file "named.baidu.com";

};

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

type slave;

file "slaves/named.baidu.com";

masters { 192.1681.102; };

};

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值