关于DNS域名解析服务

2025-07-04 18:50
文章标签 dns 域名解析 服务

本文主要是介绍关于DNS域名解析服务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《关于DNS域名解析服务》:本文主要介绍关于DNS域名解析服务,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教...

DNS系统的作用及类型

DNS是什么?

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

全世界只有13台根域名服务器,一个主根服务器在美国,12个辅根服务器,其中9个在美国,欧洲两个,位于英国和瑞典,亚洲一个位于日本。

全球互联网DNS根服务器分布差异巨大

全球互联网中枢顶级域名服务器的分布俗称"母服务器",准确的说法是世界上有13个根服务器系统。其实全球至少有1000多台根服务器,北京有3台。另外,在这13个根服务器系统之上,还有一个更高级的、隐藏着的母服务器。全世界所有的顶级域名,都是由这台母服务器来确定的。全球1000多台根服务器上的解析系统都是这台母服务器的复制,这13个根服务器系统由12家机构管理,分布在全球100多个地区。所以每一个编号的根服务器系统,不是一台机器,而是有几十台或上百台服务器。

目前广泛使用的互联网是第一代互联网,采用的互联网协议版本号为4,即IPv4。美国是第一代互联网的创立者,占有网络核心资源,处于绝对垄断地位。随着互联网的蓬勃发展,对IP地址的需求也迅猛增加,IPFv4所能提供的地址很快将发完。第二代互联网所依据的协议是IPv6。它可以提供无限数量的IP地址。

DNS使用的协议及端口号

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

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

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

例如,google为 com域的子域,其表示方法为google.com,而 ww 为 google域中的子域,可以使用wwrw .google.com.丧示。

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

例如:www.baidu.com

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

域名结构:

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

http://主机名,子域,二级域,顶级域 根域/

DNS系统的分布式数据结构

关于DNS域名解析服务

  • 根域:位于树状结构最顶层,用"."表示
  • 顶级域:一般代表一种类型的组织机构或国家地区;
  • 二级域:用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家部门统一管理
  • 子域:二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名
  • 主机:主机位于域名空间最下层,就是一台具体的计算机

DNS的分布式互联网解析库

大型、分布式的互联网DNS解析库

根. 根域名DNS服务器:专门负责根域名

一级DNS服务器:专门负责一级域名的解析(一般代表一种类型的组织机构或国家地区)

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

二级DNS服务器:专门负责二级域名解析

.net.cn、.edu.cn、.com.cn

子域名DNS服务器:专门负责子域名的解析,也称为三级域名

ina.com.cn、.pku.edu.cn

主机站点

tts9、tts6、mail、www

域名代理/注册/购买服务商

  • 新网:http://www.xinnet.com
  • 万网:http://www.net.cn
  • 中国互联:http://hulian.top
  • 中国数码
  • 阿里云
  • 腾讯云
  • 西部数码
  • 亚马逊

域名体系结构

 所有域名必须以点结尾

www.qq.com.  www.baidu.com.

  • 根域名(.)
  • 一级域名:.cn(中国)、.us(美国)、.tw、.kr(韩国)、.jp(日本)、.hk、.uk(英国)
  • 二级域名:.com.cn(中国商业组织)、.edu.cn(教育机构)、.org.cn(非盈利)、.net.cn(中国运营商)
  • 三级域名:sian.com.cn、nb.com.cn
  • 组织域:.com、.org、.net、.CC
  • 国家域:.cn(中国)、 .tw、.hk China编程、 .iq、 .ir、 .jp (日本)
  • 114.114.114.114是国内移动、电信和联通通用的DNS,手机和电脑端都可以使用。
  • 8.8.8.8是GooGLE公司提供的DNS,该地址全球通用,相对来说,更适合国外以及访问国外网站的用户使用
  • 223.5.5.5和223.6.6.6:阿里云DNS
  • IPV6 2400:3200::1 和2400:3200:baba::1
  • 江苏省南京市(中国电信),首选DNS为:218.2.135.1;备用DNS为:61.147.37.1

两种查询方式

关于DNS域名解析服务

 正向解析查询过程

1.先查本机的缓存记录

2.查询hosts文件

3.查询DNS域名服务器,交给DNS域名服务器处理

以上过程为递归查询:我要答案,你会直接给我结果

4.这个DNS服务器可能是本地域名服务器,也有个缓存,如果有直接返回结果,如果没有则进行下一步

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

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

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

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

递归查询

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

总的一句话,就是客户机发送请求后自己只用等待结果即可,中间具体过程交给服务器实现

迭代查询

DNS服务器另外一种查询方式为迭代查询,当客户机发送查询请求时,DNS

服务器并不直接回复查询结果,而是告诉客户机另一台 DNS服务器地址,客户机再向这台DNS服务器提交请求,依次循环直到返回查询的结果为止。

总的一句话,客户机的请求需要自己挨个去查询才能得到结果,服务器没有结果时候只会给你提供其它服务器的地址,而不会帮你去请求查询,这与递归截然相反。

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

客户端-本地DNS服务器:

这部分属于递归查询本地DNS服务端---外网:这部分属于迭代查询

递归查询时,返回的结果只有两种:查询成功或查询失败

迭代查询又称作重指引,返回的是最佳的查询点或者主机地址。

迭代:客户端发出一次请求,对方如果没有授权回答,它就会返回一个能解答这个查询的其它名称服务器列表,客户端会再向返回的列表中发出请求,直到找到最终负责所查域名的名称服务器,从它得到最终结果。
授权回答:向dns服务器查询一个域名,刚好这个域名是本服务器负责,返回的结果就是授权回答。

DNS服务器类型统计

DNS服务器类型

  1. 主域名服务器:负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。构建主域名服务器时,需要自行建立所负责区域的地址数据文件。
  2. 从域名服务器:当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务。从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器。构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库。
  3. 缓存域名服务器:只提供域名解析结果的缓存功能 目的在于提高查询速度和效率,但没有域名数据库。它从某个远程服务器取得每次域名服务器查询的结果,并将它放在高速缓存中,以后查询相同的信息时用它予以响应。缓存域名服务器不是权威性 服务器,因为提供的所有信息都是间接信息。构建缓存域名服务器时,必须设置根域或指定其他DNS服务器作为解析来源。
  4. 转发域名服务器:负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果。

构建DNS域名解析服务器

BIND软件安装

相关软件包

  • bind-9.9.4-37.el7.x86_64.rpm 提供了域名服务的主要程序及相关文件
  • bind-utils-9.9.4-37.el7.x86_64.rpm 提供了对DNS服务器的测试工具程序,如nslookup等
  • bind-libs-9.9.4-37.el7.x86_64.rpm   提供了bind、bind-utils需要使用的库函数
  • bind-chroot-9.9.4-37.el7.x86_6编程China编程4.rpm   为bind服务提供了一个伪装的根目录(将/var/named/chroot/文件夹作为bind服务的根目录),以提高安全

BIND服务器端程序

  • 主要执行程序:/usr/bin/named
  • 默认监听端口:53(TCP和UDP)
  • 主要配置文件:/etc/named.conf
  • 保存DNS解析记录的数据文件位于:/var/named

构建DNS域名解析服务器步骤

安装bind软件

关于DNS域名解析服务

DNS正向解析

查看配置文件所在位置

关于DNS域名解析服务

 修改配置文件

关于DNS域名解析服务

关于DNS域名解析服务

关于DNS域名解析服务

关于DNS域名解析服务

配置区域数据文件

关于DNS域名解析服务

 关于DNS域名解析服务

启动服务,关闭防火墙

关于DNS域名解析服务

更改客户端中的域名解析配置文件,改为DNS服务器地址

关于DNS域名解析服务

关于DNS域名解析服务

测试DNS解析

关于DNS域名解析服务

DNS反向解析

修改区域配置文件

关于DNS域名解析服务

关于DNS域名解析服务

 先备份配置文件,再编辑指定区域数据配置文件

关于DNS域名解析服务

关于DNS域名解析服务

测试DNS反向解析

关于DNS域名解析服务

主从服务器

环境:需要两台虚拟机,一台为主服务器,一台为从服务器

关于DNS域名解析服务

主服务器配置

修改主配置文件

 关于DNS域名解析服务

关于DNS域名解析服务

 修改区域配置文件

关于DNS域名解析服务

关于DNS域名解析服务

关于DNS域名解析服务

配置完后保存并退出,重启named

关于DNS域名解析服务

指定主服务器的DNS

关于DNS域名解析服务

测试DNS解析

关于DNS域名解析服务

从服务器配置

安装bind服务

关于DNS域名解析服务

编辑主配置文件

关于DNS域名解析服务

关于DNS域名解析服务

gKYSKMqOJ辑区域配置文件

关于DNS域名解析服务

 关于DNS域名解析服务

 关于DNS域名解析服务

 修改完后wq保存并退出,启动named

关于DNS域名解析服务

 指定从服务器的DNS

关于DNS域名解析服务

测试DNS解析

关于DNS域名解析服务

 查看从服务器是否将主服务器的区域数据配置文件备份

关于DNS域名解析服务

 China编程宕掉主服务器后,验证从服务器

关闭主服务器

关于DNS域名解析服务

验证从服务器

关于DNS域名解析服务

DNS服务器分离解析

CentOS7操作

安装bind服务

关于DNS域名解析服务

为网关服务器配置双网卡

关于DNS域名解析服务

 关于DNS域名解析服务

关于DNS域名解析服务

配置网卡并重启

关于DNS域名解析服务

关于DNS域名解析服务

关于DNS域名解析服务

关于DNS域名解析服务

重启网卡后xshell掉线,需要进入虚拟机终端查看网卡

关于DNS域名解析服务

关于DNS域名解析服务

关于DNS域名解析服务

关于DNS域名解析服务

修改区域配置文件(主配置文件)

关于DNS域名解析服务

关于DNS域名解析服务

view "lan" {                            #定义内网view,view代表容器分割
match-clients { 192.168.20.0/24; };     #匹配内网网段
zone "fl.com" IN {                   #设置要解析的区域
    type master;                 
    file "fl.com.zone.lan"; };       #数据配置文件
      
zone "." IN {                           #可将根域配置从主配置文件剪切过来,dd+p
    type hint;                          #hint是根区域类型
    file "named.ca"; };      
};
 
 
 
view "wan" {                                #定义外网view
match-clients { any; };                 #匹配除了内网网段以外的任意地址
zone "fl.com" IN {
    type master;
    file " fl.com.zone.wan"; };
};

配置区域数据文件

 关于DNS域名解析服务关于DNS域名解析服务

关于DNS域名解析服务关于DNS域名解析服务

 重启服务并验证

内网验证

关于DNS域名解析服务

客户端(外网)验证

关于DNS域名解析服务

 关于DNS域名解析服务

C:\Users\fan>nslookup www.fl.com    #解析www.fl.com

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持China编程(www.chinasem.cn)。

这篇关于关于DNS域名解析服务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1155303

相关文章

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

SpringCloud整合MQ实现消息总线服务方式

《SpringCloud整合MQ实现消息总线服务方式》:本文主要介绍SpringCloud整合MQ实现消息总线服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、背景介绍二、方案实践三、升级版总结一、背景介绍每当修改配置文件内容,如果需要客户端也同步更新,

linux服务之NIS账户管理服务方式

《linux服务之NIS账户管理服务方式》:本文主要介绍linux服务之NIS账户管理服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、所需要的软件二、服务器配置1、安装 NIS 服务2、设定 NIS 的域名 (NIS domain name)3、修改主

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

Spring LDAP目录服务的使用示例

《SpringLDAP目录服务的使用示例》本文主要介绍了SpringLDAP目录服务的使用示例... 目录引言一、Spring LDAP基础二、LdapTemplate详解三、LDAP对象映射四、基本LDAP操作4.1 查询操作4.2 添加操作4.3 修改操作4.4 删除操作五、认证与授权六、高级特性与最佳