DNS域名解析服务

文章目录

  • DNS域名解析服务
    • 一、DNS系统的作用
      • 1.DNS域名的概念
      • 2.DNS使用的协议及端口号
      • 3.域名体系结构
    • 二、DNS两种查看方式
      • 1.递归查询
      • 2.迭代查询
      • 3.正向解析查询过程
      • 4.DNS服务器类型
    • 三、实验:正向解析
    • 四、案例:DNS反向解析
    • 五、主从服务器实验:
    • 六DNS分离解析
    • 总结

引言:DNS的作用是什么?为什么需要使用DNS?打个比方www.baidu.com比119.75.217.56会更容易记住,计算机不识别中英文,通过中间转换DNS,转换成对应的IP,计算机找到IP才能访问到Web

一、DNS系统的作用

1.DNS域名的概念

DNS域名系统(Domain Name System缩写DNS,Domain,Name被译为域名)是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据块,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。

全球有13台DNS服务器,9个在美国,2个在欧洲(英国和瑞典),亚洲日本1个

2.DNS使用的协议及端口号

DNS的默认端口号为53,DNS端口分为TCP和UDP

TCP是用来做区域传送的,多用于主从同步,在一个区中主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器读取该区的DNS数据信息

UDP是用来做DNS解析的域名:通常由一个完全合格域名(FQDN)标识,FQDN全称 Fully Qualified Domain Name,它能准确表示出其相对于DNS域树根的位置,也就是节点到DNS树根的完整表述方式,从节点到树根采用反向书写,并将每个节点用“."分隔,对于DNS域google来说,其完全正式域名(FQDN)为google.com。

例:google为com域的子域,其表示方法为google.com,而www为google域中的子域,可以使用www.google.com表示

注意,通常,FQDN有严格的命名限制,长度不能超过256字节。只允许使用字符a-z,0-9,A-Z和减号(-),点号(,)只允许在域名标志之间(例如"google.com")或者FQDN的结尾使用,域名不区分大小,有最顶层到下层,可以分成:根域、顶级域、二级域、子域

FQDN=Hostname+DomainName

如:www.baidu.com

注意:最前面的一定是主机,最后一个点表示根域,通常是省略不写的,但实际上www.abc.com=www.abc.com.

域名结构:

http://www.sina.com.cn./

完全域名:同时带有主机名和域名的名称

windows系统查询dns缓存命令:ipconfig /displaydns

windows系统清理dns缓存命令:ipconfig /flushdns

3.域名体系结构

DNS系统的结构为分布式数据结构

  • 根域:位于树状结构最顶层,用"."表示

  • 顶级域:一般代表一种类型的组织机构或国家地区

    如:.net(网络供应商)、.com(工商企业)、.org(团体组织)、.edu(教育机构)、.gov(政府部门)、.cn(中国国家域名)

  • 二级域:用来表明顶级域内一个特定的组织,国家顶级域下面的二级域名由国家部门统一管理

  • 子域:二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名

  • 主机:主机位于域名空间最下层,就是一台具体的计算机

域名与IP地址之间是多对一的关系,一个IP地址不一定只对应一个域名,且一个域名只可以对应一个IP地址

组织域:.com .org .net .cc

国家域:.cn .tw(台湾) .hk(香港) .iq .ir .jp(日本)

114.114.114.114是国内三大运营商移动、电信、联通通用的DNS

8.8.8.8是GOOGLE公司提供的DNS,该地址全球通用,相对来说,更适合国外一级访问国外网站的的用户使用

223.5.5.5和223.6.6.6:阿里云的DNS

二、DNS两种查看方式

1.递归查询

递归查询是一种DNS服务器的查询模式,在该模式下DNS服务器接收到客户机请求,必须是哟个一个准确的查询结果回复客户机,如果DNS服务器本地没有存储查询DNS信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机

简单来说就是客户机发送请求后只需要等待结果即可,中间具体过程交给服务器实现

2.迭代查询

DNS服务器另一种方式为迭代查询,当客户机发送查询请求时,DNS服务器并不直接回复查询结果,而是告诉客户机另一台DNS服务器地址,客户机再向这台DNS服务器提交请求,依次循环知道返回查询的结果为止

迭代查询就是客户机发送的请求需要自己挨个查询才能得到结果,服务器没有结果的时候只会提供其他可能知道答案的服务器地址,而不会帮客户机去查询结果,与递归截然相反

从递归和迭代查询可以看出:

客户端—本地DNS服务端,这部分属于递归查询

本地DNS服务端—外网,这部分属于迭代查询

递归查询时,返回的结果只有两种:查询成功或查询失败;而迭代查询又称作重指引,返回的是最佳的查询点或主机地址

3.正向解析查询过程

1.先查本机的缓存记录,2.查询host文件;3,查询dns域名服务器,交给DNS域名服务器处理

以上过程称为递归查询,:我要一个答案会直接反馈结果

4.求助根域服务器,根域服务器返回可能会知道结果的顶级域服务器让他去找顶级域服务器

5.求助顶级域服务器,顶级域服务器返回可能会知道结果的二级域服务器地址,去找二级域服务器

6,求助二级域服务器,二级域服务器查询发现时我的主机,把查询到的IP地址返回给本地域名服务器

7,本地域名服务器将结果记录并缓存,然后把域名和IP的对应关系返回给客户端

4.DNS服务器类型

1.主域名服务器:负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改,构建主域名服务器时,需要自行建立所负责区域的地址数据库

2.从域名服务器:当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务,从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器,构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库

缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但没有域名数据库,它从某个远程服务器取得每次域名服务器查询的结果,并将它放在高速缓存中,以后查询相同的信息时它给予响应,缓存域名服务器不是权威性服务器,因为提供的所有信息都是间接信息,构建缓存域名服务器时,必须设置根域或指定其他DNS服务器作为解析来源

4.转发域名服务器:负责所有非本地域名的本地查询,转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求一次转发到指定的域名服务器,直到查找到结果为止,佛则返回无法映射的结果

三、实验:正向解析

生产环境中修改配置文件,切记需要先备份

1.查看需要修改的配置文件所在路径

2.修改主配置文件

vim /etc/named.conf          修改全局配置文件
options {               listen-on port 53 { 192.168.206.128; };     监听53端口。IP地址使用提供服务的本地IP,也可以用any代表所有   #listen-on-v6 port 53 { ::1; };             表示ipV6行,这里不使用加"#"注释或者直接删除掉
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     { any; };原为localhost,也可写为192.168.206.0/24(本机IP网段)允许本机使用DNS解析的网段zone "." IN {                 正向解析,"."代表根区域type hint;                表示类型,这里为根区域file "named.ca";        区域数据文件,"name.ca"记录了全球13台根域服务器和IP地址
}include "/etc/named.rfc1912.zones";      包含区域配置文件的所有配置

3.修改区域配置文件,添加正向区域配置

vim /etc/named.rfc1912.zones     zone "xiaofeixia.com" IN {                    正向解析"xiaofeixia.com"区域type master;                        类型file "xiaofeixia.com.zone";         指定区域数据文件"xiaofeixia.com.zone"allow-update { none; };
};

4.配置正向区域数据文件

cd /var/named/
cp -p named.localhost xiaofeixia.com.zone   保留源文件的权限和属主的属性复制(cp后面一定要加-p)
vim /var/named/xiaofei.com.zone$TTL 1D                                      设置缓存解析结果的有效时间也就是生命周期
@       IN SOA  xiaofeixia.com admin.xiaofeixia.com (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumNS      xiaofeixia.com.              记录当前区域的DNS服务器的名称A       192.168.206.128             记录主机IP地址
IN MX 10        mail.xiaofeixia.com         MX为邮件交换记录,数字越大优先级越低
www IN A        192.168.206.150         记录正向解析www.xiaofeixia.com对应的IP地址
mail IN A       192.168.206.180
ftp IN CNAME    www                     CNAME使用别名,ftp是www的别名
* IN    A       192.168.206.249         泛域名解析,"*"代表任意主机名


5.启动服务,

systemctl start named            启动服务
systemctl stop firewalld        关闭防火墙
setenforce 0                    关闭安全机制增强功能
name.checkconf -z /etc/named.conf       查看配置文件
tail -f /var/log/messages   启动失败时,通过查看日志文件排错
rndc-confgen -r /dev/urandom -a     当服务启动时卡住,可以执行该命令解决

6.在客户端的域名解析配置文件中添加DNS服务器地址

方法一:
vim /etc/reslov.conf
nameserver 192.168.206.128              修改完成后立即生效
方法二:
vim /etc/sysconfig/network-scrpits/ifcfg-ens33
DNS1=192.168.206.128
systemctl restart network           修改完成后重启网卡

或者

7.测试DNS解析服务是否成功

四、案例:DNS反向解析

1.修改主配置文件与正向解析相同

2.修改区域配置文件

vim /etc/named.rfc1912.zoneszone "0.206.168.192.in-addr.arpa" IN {     反向解析时,网段地址需要倒过来写type master;file "xiaofeixia.com.zone.local";      指定区域数据文件为"xiaofeixia.com.zone.local;不能和正向文件名相同)allow-update { none; };

3.备份区域数据文件,修改区域数据配置文件

cd /var/named
cp -p named.localhost xiaofeixia.com.zone.local
vim /var/named/xiaofeixia.com.zone.local$TTL 1D
@       IN SOA  xiaofeixia.com admin.xiaofeixia.com (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumNS      xiaofeixia.com.A       192.168.206.128
100 IN PTR      www.xiaofeixia.com      PTR反向指针;反向解析192.168.206.100地址结果为www.xiaofeixia.com;
200 IN PTR      mail.xiaofeixia.com     PTR反向指针;反向解析192.168.206.200邮箱地址结果为mail.xiaofeixia.com



4.关闭防火墙,重启DNS服务,测试DNS反向解析

五、主从服务器实验:

1.修改主配置文件

下载安装bin软件包,查看配置文件位置

2.修改主区域配置文件

3.修改区域配置文件


4.配置区域数据文件


4.以客户机身份指定从服务器的DNS地址

5.重启服务

从服务器配置

修改主配置文件

2.修改区域配置文件


3.重启服务,查看从服务器是否将主服务器的区域数据文件备份过来

4.指定从服务器的DNS

5.关掉主服务器,验证从服务器


六DNS分离解析

分离解析:同一个DNS服务器,同一个域名情况下,不同网段进行访问会解析出不同的IP地址

分离解析的域名服务器实际也是主域名服务器,这里主要是根据不同的客户端提供不同的域名解析记录,比如来自内网和外网的不同网段地址的客户机请求同一域名时,为其提供不同的解析结果

实验环境:1台CentOS 7,虚拟机一台win10

1.安装bind服务

2.为网关服务器配置双网卡



3.配置网卡并重启网卡


4.Xshell掉线,虚拟机内查看网卡是否修改成功

5.修改区域配置文件

6.修改区域数据文件,备份区域数据文件



7.重启服务,验证结果,

8.外网主机修改仅主机模式,设置外网主机网络适配器 IP地址与网关

9.运行cmd查看解析结果为外网地址

总结

通过上述内容和实验,可以了解DNS的工作原理(包含递归和迭代查询),DNS正向解析和反向解析的配置,主从服务器的配置方法,出现主服务器宕机时,从服务器就会顶替工作;分离解析的配置,在生产中用的很多,很多电商就使用这个方法给顾客一个完美的体验,外网和内网会共用一个域名

LinuxDNS域名解析相关推荐

  1. Linux--DNS域名解析服务

    目录 前言 一.DNS概述 1.DNS系统的作用 2.DNS系统的分布式数据结构 3.两种查询方式 4.DNS服务器类型 二.配置正向解析 三.配置反向解析 四.构建主从域名服务器 1. 从服务器作用 ...

  2. linux------DNS域名解析

    一.什么是域名解析 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务.IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址.域名解析 ...

  3. Linux--DNS 域名解析服务(理论+正向解析)

    文章目录 前言 一.BIND 域名服务基础 1.DNS 系统的作用 ①DNS系统的作用 ② DNS 系统的分布式数据结构 2.DNS服务器类型 二.正向解析和反向解析 1.正向解析查询过程 2.两种查 ...

  4. linuxDNS服务器的部署

    linuxDNS服务器的部署   DNS服务器专业叫域名解析服务器,在linuxDNS服务器的部署上和WINDOWS上大同小异,其术语是类似的,这里就不一一介绍了. 首先,在部署DNS之前,先确定服务 ...

  5. Linux-DNS服务器的配置与管理(上)

    Linux-DNS服务器的配置与管理(上) DNS服务器的配置与管理 **************** 首先要知道下面几个与域名解析相关的文件 /etc/hosts         --早期(DNS之 ...

  6. 学习笔记:腾讯云--域名解析

    一周多的等待终于域名备案完成,开始域名解析.发现好多坑,亏的有个好老师,不然跳进去了我得好几天出不来. 开始域名解析: 1解析域名:腾讯云在域名管理里要点两次解析,第二次才是真正的开始. 注:此处的添 ...

  7. 域名解析和cdn 原理

    用户访问未使用CDN缓存网站的过程为: 1).用户向浏览器提供要访问的域名: 2).浏览器调用域名解析函数库对域名进行解析,以得到此域名对应的IP地址: 3).浏览器使用所得到的IP地址,域名的服务主 ...

  8. 域名登陆出现400_域名解析错误怎么办?

    可能有些人在进行域名解析时会遇到解析错误的问题,遇到这样的问题该怎么办呢?今天小编给大家整理了一些思路,希望能够提供一些帮助给大家. 网站域名设置 目前域名解析服务很多都是由域名供应商来设置,也有用户 ...

  9. 阿里云 域名解析和主机绑定域名

    阿里云 域名解析和主机绑定域名 视频 https://www.bilibili.com/video/BV1y7411d7qb?from=search&seid=1530297799645748 ...

  10. 群晖阿里云域名解析_群晖套件系列六:Web station的安装与使用

    Web station这个套件是群晖的http/https服务器,也就是WEB服务器,通过它你能搭建自已的网页服务器,诸如群晖导航页(可以将群晖各个套件直接放在WEB首页).个人博客.甚至于论坛等,使 ...

最新文章

  1. spring获取webapplicationcontext,applicationcontext几种方法详解(转载)
  2. MySQL-索引优化篇(3)_利用索引优化锁
  3. mysql开启perform sch_MySQL Performance schema设置的一些建议选项
  4. python3中zip()函数的用法
  5. qt-重写event(),事件过滤器,定时器,事件总结
  6. [react-router] React-Router的<Link>标签和<a>标签有什么区别
  7. 高效开发 Android App 的 10 个建议
  8. SqlServer死锁com.microsoft.sqlserver.jdbc.SQLServerException: Transaction (Process ID 52) was deadlock
  9. 如何区分用户_如何区分粗沙、中沙、细沙,把粗沙制成细沙需要用什么制砂设备,多少钱?...
  10. d - 数据结构实验之查找四:二分查找_数据结构与算法笔记
  11. (转)每个人都应该读一读贝索斯的致股东信 1997-2016
  12. 进政府网站要求IE8浏览器,IE8浏览器进不去,使用IE进政府机构网站提示非法进入提示不能直接使用URL进入网址,windows10安装IE8提示系统不支持【解决办法】
  13. MATLAB-1: 线性拟合(r2、系数和系数误差)
  14. google输入法 日文 [CapsLock]キー ひらがな⇔直接入力の設定
  15. 腾讯课堂老师可以看到学生本人吗?
  16. 团队协作软件之confluence和jira的配套使用
  17. hog特征与fhog特征
  18. 音视频笔记-视锥细胞和视杆细胞的区别
  19. HTML5+js 实现生成二维码,扫描解析二维码
  20. 【JVM 学习笔记 05】:JVM性能调优工具的使用和优化案例

热门文章

  1. lozi混沌映射吸引子,使用python的matplotlib绘制,可以放大和缩小
  2. 磁钉导航差速式AGV控制实验
  3. Ubuntu16 修改DNS
  4. 推荐算法架构3:精排
  5. fileuploads
  6. 基于Hadoop的电商用户分析系统
  7. 台式计算机调亮度快捷键,电脑调节亮度快捷键是什么?分享电脑快速调节亮度的方法...
  8. 一个画布有多个子图_如何把多张图拼成一张长图
  9. 找不到或无法加载主类什么意思(找不到或无法加载主类)
  10. 管理欲望:领导者的自我觉察与突破