相关文章
域名解析DNS服务
2024-11-10 17:56

域名解析DNS服务

DNS:Domain Name System (域名系统)

DNS 是互联网上解决网络中机器命名的一种系统。在网络中,一台主机去访问另外一台主机时,必须要 知道目标主机的IP地址,虽然网络上的节点都可以用IP地址来标识,并且可以通过IP地址被访问。但对 于自然人而言,一组组由数字组成的IP地址,是难以被理解和记忆的。于是设计出了域名系统,用一组 有意义的字符来表示某个特定主机或某个网络,再将网络中主机IP地址和域名之间做成一个映射表。

DNS 就是负责维护主机IP地址和域名映射关系的服务,同时也提供域名解析服务,即人类通过域名访问 某个主机或节点时,由DNS服务将人类可读的域名转换为机器可读的IP地址,再通过IP地址找到对应的 主机。

域名 (Domain Name)

域名,又称网域,顾名思义,是一个域的名称。 是一串用点号分隔的字符,可以用来标识网络中某台主 机或某个节点,由DNS服务维护域名和主机IP地址之间的映射关系,当我们在网络中访问某个域名时, 实际上访问的是该域名对应的IP地址所标识的主机。

FQDN:(Fully Qualified Domain Name)全限定域名

域名是一个域的名称,一个网域或一个节点,可以有多台主机,所以为了精确表示域里面的某台主机, 我们在使用域名时,还需要加上主机名,FQDN指的就是同时带有主机名和域名的名称。

域名的组成

域名由英文字母,数字和英文连字符(-) 组成,且不区分大小写。

域名是分层次的,允许定义子域,子域名与上级域名之间用 . (点号)分隔,最上层节点的域名称为顶级 域名(TLD,Top-Level Domain),第二层节点的域名称为二级域名,依此类推。级别最低的域名写在最 左边,而级别最高的域名写在最右边。每一层级的域名长度不能超过63个字符,多级域名加起来不能超 过255个字符。域名最多可以有127级。

域名的管理

域名由因特网域名与地址管理机构(ICANN,Internet Corporation for Assigned Names and Numbers) 管理,这是为承担域名系统管理、IP地址分配、协议参数配置,以及主服务器系统管理等职能而设立的 非盈利机构。

ICANN为不同的国家或地区设置了相应的顶级域名,这些域名通常都由两个英文字母组成。例如:.uk代 表英国、.fr代表法国、.jp代表日本。中国的顶级域名是.cn,.cn下的域名由CNNIC进行管理。

一级域名:又称顶级域名,可分为三类,一类代表国家和地区(cn,hk,......),一类代表各类组织 (com,edu,......),以及反向域

二级域名:某个具体组织,单位,机构,商业公司或个人使用,需要向域名管理机构申请(付费)才能获得 使用权

二级域名以下的域名,由使用该域名的组织自行分配

主机中DNS客户端配置

当一台主机接入互联网时,在配置网络时,通常有两种方式,一种是从DHCP服务自动获得IP地址,另外 一种是手动指定静态地址

从DHCP服务自动获取IP时,通常也会自动获得DNS服务器地址,手动配置静态地址时,也需要手动配置 DNS服务器地址

当用户使用主机 发送/接收 邮件,或浏览网页时,就是由主机上配置的DNS服务器地址负责将域名转换 成对应的IP地址。

Rocky中手动配置的DNS服务器地址

 

查看Ubuntu 中的DNS

 

DNS服务解析域名流程

  1. 当客户端主机决定访问 百度一下,你就知道 这个域名时,首先会查询本机缓存

  2. 如果本机缓存没有解析记录,则会向其配置的DNS服务器发起解析请求

  3. DNS代理解析服务器会先查询其缓存是否有这条解析记录,如果有,则直接返回,如果没有,则继 续向上解析

  4. DNS代理解析服务器会向根域名服务器发起解析请求,根域名服务器返回 com 域名的DNS地址

  5. DNS代理解析服务器继续向 com 域名服务器发起解析请求,com 域名服务器返回 baidu.com 域名服务器DNS地址

  6. DNS代理解析服务器继续向 baidu.com 域名服务器发起解析请求,baidu.com 域名服务器返 回 www.baidu.com 主机的IP

  7. DNS代理解析服务器将 www.baidu.com 的IP地址存入本机缓存,再读取缓存,将 IP地址发送给 客户端主机

  8. 客户端主机通过IP地址顺利访问 百度一下,你就知道

注意:DNS服务只负责域名解析,也就是说,DNS服务,只负责返回与域名对应的IP地址,但该IP地址在网络 上是否是可达的,并不由DNS决定

递归查询

是指DNS服务器在收到用户发起的请求时,必须向用户返回一个准确的查询结果。如果DNS服务器本地 没有存储与之对应的信息,则该服务器需要询问其他服务器,并将返回的查询结果提交给用户。

一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后,若DNS服务器 本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结果后转交给客户 机。

此查询的源和目标保持不变,为了查询结果只需要发起一次查询。

递归算法:客户端向LocalDNS发起域名查询-->localDNS不知道域名对应的IP-->但它知道谁知道->他代 为帮客户端去查找-->最后再返回最终结果。

迭代查询

是指DNS服务器在收到用户发起的请求时,并不直接回复查询结果,而是告诉另一台DNS服务器的地 址,用户再向这台DNS服务器提交请求,这样依次反复,直到返回查询结果。

一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对方不能返回权 威的结果,则它会向下一个DNS服务器(参考前一个DNS服务器返回的结果)再次发起进行查询,直到返 回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需要发起多次查询。

迭代算法:客户端向LocalDNS发起域名查询-->localDNS不知道域名对应的IP-->但它知道谁知道并推荐 客户端应该找谁-->客户端自己去找它。

DNS缓存

DNS缓存是将解析数据存储在靠近发起请求的客户端的位置,也可以说DNS数据是可以缓存在任意位 置,最终目的是以此减少递归查询过程,可以更快的让用户获得请求结果。

Windows系统

 

CentOS系统

 

Ubuntu系统

 

DNS服务器里面有两个区域,即 正向查找区域 和 反向查找区域

正向解析:将域名解析成IP地址

反向解析:根据IP地址得到该IP地址指向的域名

hosts文件是一个没有扩展名的系统文件,可以直接用文本编辑工具修改,在该文件中直接定义域名与IP 地址的对应关系当主机访问某个域名时,会先从hosts文件中寻找与该域名对应的IP地址,如果找到, 则直接请求该IP地址,如果找不到,才会将该域名提交DNS服务请求解析该域名对应的IP地址。

操作系统规定,在进行DNS请求以前先检查系统自己的Hosts文件中是否有这个域名和IP的映射关系。 如果有,则直接访问这个IP地址指定的网络位置,如果没有,再向已知的DNS服务器提出域名解析请 求。也就是说Hosts的IP解析优先级比DNS要高。

hosts文件是引入DNS服务之前的解析方案

早期的 internet 网络规模非常小,一个hosts文件就可以定义所有的域名与IP地址的映射关系,管理机 构提供该文件下载地址,并定期更新文件内容,以此来反映网络上的变化。

但随着时间的推移,接入 internet 的主机和域名越来越多,通过一个中心文件管理所有域名与IP地址映 射关系己经不再可取,于是便引入了DNS服务

 

dig:(Domain Information Groper) 域名信息查询工具

dig 命令不会查询本地 hosts文件中定义的域名和IP对应关系

 

查询结果说明

 

host 命令可以根据域名查询得到对应的服务器IP地址

host 命令不会查询本地 hosts文件中定义的域名和IP对应关系

 

nslookup:(name server lookup),一个命令行下的网络工具,主要用来查询DNS记录,查看域名解析 是否正常,也可用来诊断网络问题

nslookup 支持交互式和非交互式两种执行方式,在Windows系统中和Linux系统中都可以使用

nslookup 命令不会查询本地 hosts文件中定义的域名和IP对应关系,也不能查询dns的递归或者迭代

 

rndc 是 bind 程序的客户端工具,默认使用 TCP的 953 端口连接 bind 服务器,进行管理

 

whois 命令可以查询域名注册信息

 

在 ubuntu 系统中,虽然在网卡中配置了 DNS 服务器的IP地址,但在使用相关命令进行 DNS 解析时, 默认的 DNS 服务器使用的是 127.0.0.53,而并不是我们在网卡上配置的DNS 服务器地址。

 

systemd-resolved 服务为本地应用程序提供了网络名字解析服务, 系统通过它对外进行 dns 请求。

 

设置全局DNS

 

bind:(Berkeley Internet Name Domain)

bind 是一款实现DNS服务的开放源码软件,由伯克利大学开发,能够提供双向解析,转发,子域授权, view 等功能,使用广泛,目前Internet上半数以上的DNS服务器都是由Bind来实现的。

安装

 

启动服务

 

查看端口占用

named默认会占用TCP和UDP的53端口, 953是给管理工具使用的

将其它机器的DNS指向本机

 

Bind 的配置说明

配置文件解析流程

bind 配置文件

 

主配置文件 /etc/bind/named.conf

 

选项配置文件 /etc/bind/named.conf.options

 

该文件主要包括以下几部份内容,默认只有全局配置部份

配置配置字段备注全局配置options{};全局配置选项日志子系统配置logging{};运行日志网络自定义集合acl将某个网段或某个具体IP地址定义在一个集合里面视图view配合acl将不同的请求来源用不同的解析规则返回,实现智能 DNS
 

中间配置文件 /etc/bind/named.conf.default-zones

该文件中定义了要解析的域名与具体解析规则之间的对应关系

 

allow 访问控制指令

在named配置中有四个allow开头的字段,主要用来实现访问控制

字段说明allow-query{};允许查询本DNS的主机,白名单,注释就代表所有主机都可使用本机当DNSallow-transfer{};允许区域传送的主机,白名单,注释代表所有,一般用在主从DNS配置时指 定从节点allow-recursion{};允许递归的主机,建议全局使用allow-update{};允许可以远程更新解析规则的主机

acl 地址集合

ACL:将一个或多个网段(或具体IP地址)定义在一个集合里面,并通过统一的名称进行调用。

ACL 只能先定义后调用,因此一般放在配置文件的最上面,在 options 之前定义。

ACL 有四个内置值

ACL说明none排除所有主机any所有主机localhost本机localnet本机IP同子网掩码运算后得到的网段

view 视图

view:视图,将ACL和具体的解析规则对应起来,实现根据条件解析,实现智能DNS

  • 每个view用来匹配一个ACL

  • 一个bind服务可以可以定义多个view,每个view 中可定义的一个或多个zone;

  • 不同的view中可以对同一个域名进行解析,返回不同的解析结果

  • 如果定义了view,则所有的zone规则都要写在view中了,不能再直接写在 /etc/named.conf 中 了

  • 客户端请求到达时,是自上而下检查每个view所对应的ACL的,也就是说,如果请求被命中了,就 进入解析,不再向后匹配

具体解析规则 /etc/bind/db.*

该文件定义域名的具体解析规则,该文件有多条资源记录组成,每一行都是一条资源记录,在RFC文档 中,DNS解析记录被称为Resource Recode(资源记录,缩写为 RR

Resource Recode 定义

 

CLASS 字段说明

值说明INthe Internet/互联网,最常用的CSCSNET,己被废弃CHCHAOS ,一种早期协议HSHesiod

TYPE字段说明

常用的TYPE字段值有A,AAAA,CNAME,MX,NS,PTR,SOA 等

值说明Ainternet Address,将FQDN解析成IPV4地址,这是最常用的一种解析类型AAAAIPV6 internet Address,将FQDN解析成IPV6地址CNAMEthe canonical name for an alias,记录别名,将域名解析到另一个域名HINFOhost information,主机信息KEY安全密钥记录MD被废弃,使用 MXMF被废弃,使用 MXMINFOmailbox or mail list information,邮箱或邮件列表信息MXMail eXchanger,用于邮件交换,指定邮件服务器NSName Server,将解析指向另外一个DNS,表示由被指定的DNS解析当前记录PTRa domain name pointer,域名指针,用IP地址反向解析域名SOAa marks the start of a zone of authority,标记权威区域的开始SRVservice and protocol,服务和协议TXTtext strings,文本字符串,此类型值长度限定不超过512个字符WKSa well known service description/众所周知的服务描述

A 记录 和 AAAA记录

A 记录也称主机记录,是将主机域名解析到指定的物理机IPV4地址上

AAAA 记录是IPV6地址的主机记录,是将主机域名解析到指定物理机的IPV6地址上

A 记录是DNS解析服务中最常见的资源记录

 

CNAME 别名记录

记录别名,将域名解析到另一个域名

 

MX 记录

邮件交换 (MX) 记录将一个域的电子邮件定向到托管该域用户帐号的服务器(SMTP服务器)。

一个域可以定义多条MX记录,但每条MX记录的优先级不同,如果邮件通过最高优先级记录无法递送, 则采用第二优先级,以此类推。

每个MX记录的value之前有一个数字(0-99),表示此服务器的优先级,数字越小优先级越高

对MX记录而言,任何一个MX记录后面的服务器名字,都应该在后续有一个A记录

 

NS 记录

域名服务器 (NS) 记录用于确定哪些服务器为一个网域提供DNS解析服务。

一般来说,为了服务的安全可靠,一个域名,至少应该有两条NS记录,保证服务的冗余,防止出现单点 失败。

 

PTR 记录

PTR记录是A记录的逆向记录,又称做IP反查记录或指针记录,负责将IP反向解析为域名

 

SOA 记录

SOA记录是起始授权记录,用于设置当前DNS服务器的某些规则,SOA记录要放在整个文件的最开始。

SOA 记录表示此DNS是该域名的权威解析服务器,当在查询的过程中,各级缓存都没有要查询的内容 时,最后会通过递归查询的方式到达此DNS服务器,并请求此域名的SOA记录。

SOA记录同样符合 NAME TTL CLASS TYPE VALUE 这五个字段的格式定义,但VALUE字段值较多

VALUE 字段中从左到右具体内容如下

字段说明DNS服务器名称描述性字段,表示当前DNS服务器名称服务器管理员邮箱邮箱中的@要写成当前数据库的版本号主从服务器要同步数据,此字段就是数据更新的标识从服务器拉取数据的时间间隔从服务器拉取数据的时间间隔从服务器同步失败后重试时间间隔上次同步失败后,间隔多久重试从服务器同步失败超过多长时间从服 务器失败同步失败时长超过此值,则认为从服务器数据无效不存在的记录缓存时长当查询一个不存在的解析记录时,该记录在指定时间内直 接返回不存在
 

TXT 记录

TXT记录是对域进行标识和说明的一种方式,一般用于验证记录,该记录的值可以是人工可读文本,也 可以是机器可读文本,也可为空。

    以上就是本篇文章【域名解析DNS服务】的全部内容了,欢迎阅览 ! 文章地址:http://tiush.xhstdz.com/news/3977.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 物流园资讯移动站 http://tiush.xhstdz.com/mobile/ , 查看更多   
最新文章
做seo为什么要从白帽seo做起
本人十三君跟着师父十二君做seo也有些时间了,从接触seo以来,发现一个有趣的现象:很多做seo的人员,尤其是新人总想着玩黑帽与
企业工信部备案提交教程(电子化备案)
一、教程目的 本教程主要针对首次备案过程中所需基本信息的填写说明。 (非经营性网站:只要是通过第三方支付࿰
伊金霍洛网站排名优化费用是如何计算的?
伊金霍洛网站seo优化百度搜索引擎关键词快速排名推广提升自然流量点击SEO优化师、网站设计师、梦想者您的流量获取专家“创新互联
【R9s(全网通)搜狗手机输入法下载】OPPO R9s 全网通搜狗手机输入法12.1.1免费下载
搜狗输入法,拥有超大中文词库,输入更加精准,智能。搜狗智能旺仔带你用表达,斗图,妙语,输入更加有趣。******特色功能******
57、曾正忠三部曲 《变化球 Breaking Ball》《迟来的决战 The Last Battle》《无胆狗雄 TATAMI》
水平有限,还望轻喷。\\\ ( 'ω' ) //// 相较去年,重心从挑选top10变成了尽量多列举一些作品,所以今年提及的漫画数量比较
微信公众号及服务号文章爬取
使用Python爬取公众号文章主要两种方法:通过爬取第三方公众号聚合网站通过微信公众平台引用文章接口微信传送门已被封杀,现存可
人工智能板块震荡:投资者应关注AI ETF与软件ETF动态
随着科技的不断发展,人工智能(AI)领域的投资持续引发市场的关注。根据最新市场数据,截至今日收盘,中证人工智能主题指数上涨
男科专题:宁波市男科医院排名更新,宁波普仁男科医院怎么样
男科专题:宁波市男科医院排名更新,宁波普仁男科医院怎么样?男科疾病常常困扰着男性的生活与工作,影响着他们的身心健康。因此
品牌升级前必须思考的5个关键问题
重塑品牌事关重大,改变现有的品牌名称或形象可能会非常冒险。但同时,品牌形象升级也可能恰恰是治愈品牌病痛的不二良方。当企业
城口SEO优化神器,企业线上崛起的利器揭秘
城口SEO优化推广软件,为企业线上崛起提供强劲助力。通过精准关键词优化、网站结构优化等手段,提升网站在搜索引擎排名,吸引潜
相关文章