DNS解析
DNS 域名解析系统
在应用层上实现,注意:很多网络功能的实现都是通过接入网,节点层次去实现,而不是在网络核心中实现
运行在udp之上,port=52
## 具体实现
> 规范主机名到IP
> 主机别名到规范主机名
> 邮件别名到邮件名
通俗一点就是找到你要访问网址的服务器地址,不然怎么跟他沟通信息

## 概念了解
* DNS
> 是由分成的DNS服务器实现的数据库
> 某个应用层协议支撑DNS的运行
* 主机名(!=计算机名)
> 是一种主机(请求网址的服务器)的标识方法,主要是好记,例如(www.facebook.com), www 是服务器名(文件和邮件),facebook.com 是域名,一个主机名由服务器名和域名组成
* 主机别名
> 就是昵称,主机名是复杂的,所以用主机别名来标识自己
* 规范主机名 就是主机名,比主机别名规范,所以叫规范主机名(hahaha)
* IP地址 (简单)
> 借鉴与本机的IP 127.0.0.1可以直到他是层状的,有着严格的层状结构,人们可以通过IP地址最终找到主机的网络地址
* URL
> 统一资源定位符,类似于www.facebook.com/path?query=haa 这种,与主机名记得区分
工作机理
分布式的数据库(理解层状的含义)

* 根DNS服务器
十三个及其副本遍布全球,来提供TLD的ip
* 顶级域DNS服务器(TLD)
来提供权威DNS服务器的IP,例如.com,.cn
* 权威DNS服务器
来提供具体给你提供服务的服务器的DNS,例如facebook.com
* 本地DNS服务器(LDNS)
起着代理的作用,可以把它理解为中转站,因为你可能与权威DNS服务器过于遥远,通过本地DNS服务器来获取权威服务器的IP
> 可以将这些节点(各种服务器看作一棵树),所以具体需要查询某个服务器的ip时就是先往根走,在从根走向树叶,非常好理解,下面是两个解释:
>


DNS缓存(important)
每当本地DNS服务器dns.edu 从某个DNS服务器接收到一个回答,他就能能够缓存包含该回答中任何信息(映射)
DNS记录 (资源记录RR)
IN表示是在http上运行
所有DNS服务器中储存了资源记录–一个四元组 **(Name,Value,Type,TTL)**,RR提供了主机名到IP的映射,包含在报文之中
- TTL就是往返时间,决定了资源记录应当从缓存中删除的时间
- Type 就是类型,决定了后续的name和value的关系
- Type=A name 是主机名 value是IP
- Type=NS name 是域 value是一个直到如何获得域中主机IP地址的权威DNS服务器的主机名
- type=CHAME name 是主机别名 value是规范主机名
- type= MX name是邮件服务器的主机别名,value就是相对于邮件服务器的规范主机名
报文呈现(具体看书)
- DNS查询报文
- DNS回答报文
最后,如果某个网站域名的获取,就需要注册登记机构,提供你的DNS服务器名字和IP,然后交钱。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Echin の 博客!