IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 计算机网络note_DNS域名解析 -> 正文阅读

[系统运维]计算机网络note_DNS域名解析

1、DNS(Domain Name System)

1.1、为什么有DNS?

IP地址标识主机/路由器,但IP不好记忆不便于使用,所以使用有意义的“字符串”来标记IP地址,DNS负责将域名解析为IP

IP 地址的长度为 32 比特,也就是 4 字节,IPv6 是 128 比特 16 字节,但是域名很短,比如ww.baidu.com也要十几个字节。也就是说,直接使用域名的话需要处理的字符大大增加了,这无疑增加了交换节点路由器的负担。


1.2、DNS实现的思路

DNS基本的功能就是,存域名和IP的映射关系,然后对着表查找,返回IP;

如此庞大的数据量,采用什么方式表示域名(分层)、如何存储(分布式)、如何查询咩(UDP方式)?

  • 为防止重名,要是分层的、基于域的命名机制;
  • 分布式数据库完成域名到IP的转换;
  • 运行在UDP之上,端口号为53的应用服务;

1.3、DNS主要目的

  • 主机名到IP地址的转换;
  • 主机别名( Host aliasing)到规范名的转换;? ?邮件服务器别名(Mail server aliasing)到邮件服务器正规名的转换;

一台名为?http://relay.west-coas.enterpnse.com?的主机,可能还有两个别名?http://enterpise.com?和?http://www.enterpnse.comhttp://relay.west-coas.enterpnse.com?是规范名字,其他两个是主机别名。

可以看出,规范名字是为了便于管理,别名是为了便于用户的访问。

  • 负载均衡(load distribution) :将一个主机名对应多个服务器的IP,减轻服务器压力,提高响应;

2、域名的分层命名


3、划分区域管理

3.1、只有一个名字服务器的问题

  • 可靠性:单点故障
  • 扩展性:通信容量
  • 维护问题:远距离的集中式数据库

3.2、区域(Zone)

将DNS名字空间划分为互不相交的区域,每个区域都是树的一部分

3.3、名字服务器

每个区域都有一个名字服务器,维护着所在区域的权威信息(authoritative record);

分类作用
根域名服务器最高层次的域名服务器,本地域名服务器解析不了的域名就会向其求助
顶级域名服务器负责管理在该顶级域名服务器下注册的二级域名
权威域名服务器负责一个区域的域名解析工作
本地域名服务器当一个主机发出DNS查询请求时,这个查询请求首先发给本地域名服务器

4、区域名字服务器 维护的资源记录(resource records)

4.1、位置

名字服务器的分布式数据库中

4.2、格式(domain_name,ttl,type,class,value)

名称解释说明
domain_name域名
ttl(time to live)

生存时间:分为权威和缓冲记录

权威记录:一直要保存的域名和IP关系;

缓冲记录:使用中缓存的域名和IP关系,比如说2天之后就可以删掉

class类别:对于Internet,为IN
value数字、域名、ASCII字符串;
type资源记录的类型

Type=A,存放主机和IP地址;

Type=CNAME,存放别名和规范名;

Type=MX,存放邮箱别名和规范名;

Type=NS,管理子域;

type的值对应的name和value
Aname为主机;value为IP地址
CNAMEname为别名;value为规范名
MXname为邮件服务器的别名;value为邮件服务器的规范名
NSname为域名(如:foo.com);value为该域名的权威服务器的域名

更多type值的对应关系见参考资料链接2;


5、DNS查询方式

5.1、递归查询

本地域名服务器查不到IP的情况下,问根域名服务器,根域名服务器不知道去问顶级域名服务器,层层向下.....,然后查到了之后再层层返回;

5.2、迭代查询

本地域名服务器查不到IP的情况下,问根域名服务器,根域名服务器不知道,但是让本地域名服务器去问顶级域名服务器,层层向下.....

6、DNS报文

DNS 分为查询请求和查询响应,请求和响应的报文结构基本相同

  • 事务 ID:对于请求报文和其对应的应答报文,该字段的值是相同的。

??????????????????????通过它可以区分 DNS 应答报文是对哪个请求进行响应的。

  • 标志 Flags:一些标志,比如:用于标识请求还是响应报文、是用递归查询还是迭代查询、响应报文的数据有没有被截断等;

参考资料:

你应该知道的 DNS —— 计算机网络自顶向下 - 知乎 (zhihu.com)

DNS 协议是什么?_妙趣前端的博客-CSDN博客_dns协议

(1条消息) DNS报文格式解析(非常详细)_跑步_跑步的博客-CSDN博客_dns报文格式

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-05-10 12:16:32  更:2022-05-10 12:17:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 15:23:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码