理解DNS协议

1、IP—域名

TCP/IP协议用IP地址+端口号,确定网络中某台计算机中的某个程序,但IP地址太长不方便记忆,

出现了域名:www.baidu.com

hosts文件:保存域名—IP对应关系的字典

早期,互联网信息中心管理hosts文件,有一个新的计算机想加入网络,或IP地址要修改

需要到信息中心申请修改,其他计算机也需要定期修改,保证大家都能正常上网。

以上,太麻烦。

2、DNS系统用的是什么协议?

DNS:53号端口,同时使用TCP和UDP协议。

DNS在区域传输的时候使用TCP协议,其他时候使用UDP协议。

(1)区域传输—TCP协议:

DNS的规范规定了2种类型:

  • 主DNS服务器
  • 辅助DNS服务器

在一个区中,主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,

辅助DNS服务器则从区的主DNS服务器中读取该区的DNS数据信息。

当一个辅助DNS服务器启动时,它需要与主DNS服务器通信,并加载数据信息,这就叫做区传送(zone transfer)

1.辅域名服务器会定时(一般3小时)向主域名服务器进行查询以便了解数据是否有变动。

如有变动,会执行一次区域传送,进行数据同步。区域传送使用TCP而不是UDP,因为数据同步传送的数据量比一个请求应答的数据量要多得多。

2.TCP是一种可靠连接,保证了数据的准确性。

(2)域名解析—UDP协议:

客户端向DNS服务器查询域名,一般返回的内容都不超过512字节,用UDP传输即可。

不用经过三次握手,这样DNS服务器负载更低,响应更快。

理论上说,客户端也可以指定向DNS服务器查询时用TCP,但事实上,很多DNS服务器进行配置的时候,仅支持UDP查询包

2、DNS系统

(1)DNS系统:管理维护系统内的每个主机IP和主机名的对应关系;

域名解析过程中,先查找hosts文件;找不到再查询DNS服务器检索数据库,解析获取对应的ip地址

(2)DNS缓存

解决DNS解析慢的问题,在缓存中保存通过自己所解析的域名地址

(3)DNS解析流程

假设本地机器访问域名networkutopoa.com其详细的协议通讯过程如下:

(1)浏览器先检查自身缓存有没有这个解析的地址;

(2)没有的话,浏览器查找本地操作系统中的缓存,windows系统中就是查看hosts文件;

(3)还没有找到的话,就请求本地域名服务器(LDNS)解析域名;(在自己的城市)

(4)如果还没找到的话,直接跳到Root Server 域名服务器请求解析;

(5)根域名服务器返回给LDNS一个所查询的主域名服务器gTLD(com.cn.org)等地址;

(6)LDNS继续发送请求给上一步返回的gTLD;

(7)收到请求的gTLD查找并返回这个域名对应的Name Server的地址,这个Name Server就是网站注册的域名服务器

(8)Name Server根据映射关系表找到目标ip,返回给LDNS

(9)LDNS缓存这个域名和对应的ip

(10)LDNS把解析的结果返回给用户,用户结果缓存到本地系统,域名解析过程至此结束

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值