DNS
DNS(Domain name system)
是DNS服务器实现的一个分布式数据库,同时也算是一个应用层协议运行在unix机器之上,端口号为53
http、smtp、ftp都是用了DNS将主机名转化为IP地址
原理如下
1) 同一台用户主机上运行着DNS应用的客户端。
2) 浏览器从上述URL中抽取岀主机名www.baidu.com,并将这台主机名传给DNS应用的客户端。
3) DNS客户向DNS服务器发送一个包含主机名的请求。
4) DNS客户最终会收到一份回答报文,其中含有对应于该主机名的IP地址。
5) 一旦浏览器接收到来自DNS的该IP地址,它能够向位于该IP地址80端口的HTTP服务器进程发起一个TCP连接。
规范主机名与主机别名,邮件系统别名联想自己的学校邮箱
DNS工作原理
主机例如web应用需要将主机名转换为IP地址时,调用DNS客户端,指明主机名,底层的unix实现是调用一个函数gethostbtname()
特性
DNS记录与报文
DNS服务器中提供了资源记录,包含四元组(Name, Value,Type,TTL)
如果Type = A,则Name是主机名,Value是该主机名对应的IP地址。因此,一条类型为A的资源记录提供了标准的主机名到IP地址的映射。例如(Tayl.bar. foo. com, 145. 37.93. 126, A)就是一条类型 A 记录。
如果Type = NS,则Name是个域(如foo. com),而Value是个知道如何获得该域中主机IP地址的权威DNS服务器的主机名。这个记录用于沿着查询链来路由DNS查询。例如(fgcom, cins.foo.com, NS)就是一条类型为NS的记录。
如果Type=CNAME,则 Value是别名为Name的主机对应的规范主机名。该记录能够向査询的主机提供一个主机名对应的规范主机名,例如(foo.com, relay1.bar. foo. com, CNAME)就是一条 CNAME 类型的记录。
如果Type = MX,则Value是个别名为Name的邮件服务器的规范主机名。举例来说,(foo.com, mail. bar. fo<). com, MX)就是一条MX记录。MX记录允许邮件服务器主机名具有简单的别名。值得注意的是,通过使用MX记录,一个公司的邮件服务器和其他服务器(如它的Web服务器)可以使用相同的别名。为了获得邮件服务器的规范主机名,DNS客户应当请求一条MX记录;而为了获得其他服务器的规范主机名,DNS客户应当请求CNAME记录
控制台键入nslookup 即可看权威DNS服务器与地址 dns.hust.edu.cn
P2P与BitTorrent
之前都是采用客户-服务器体系结构,依赖于服务器,P2P则是最小或是没有依赖。成对间歇连接的主机直接相连,对等方。最广泛的是BitTorrent协议
视频流
- Post title:
- Post author:Winter
- Create time:2023-03-23 20:24:54
- Post link:https://spikeihg.github.io/2023/03/23/DNS/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.