浅谈DNS

一、什么是DNS?

DNS (Domain Name System 域名系统 )的作用非常简单,就是根据域名查出IP地址。

为什么要查出IP地址,是因为传输层进行TCP/IP通信是用到的源地址和目标地址都是IP地址。

二、DNS如何查询IP地址?

DNS服务器是根据域名的层级,进行分级查询。

域名的层级结构可分为:

主机名.次级域名.顶级域名.根域名

缩写:host.sld.tld.root

举个栗子:

 www.baidu.com真正域名其实是www.baidu.com.root,因为根域名对于所有域名都是一样的,所以平时都是省略不写。

所以.root是根域名,.com是顶级域名,.baidu是次级域名,www是主机名,又称三级域名。

所谓"分级查询",就是从根域名开始,依次查询每一级域名的NS记录,直到查到最终的IP地址,过程大致如下:

  1. 从"根域名服务器"查到"顶级域名服务器"的NS(域名服务)记录和A(地址)记录
  2. 从"顶级域名服务器"查到"次级域名服务器"的NS记录和A记录
  3. 从"次级域名服务器"查出"主机名"的IP地址

那么根域名服务器的IP地址又是如何得知的呢?

因为全球共有13台根逻辑域名服务器,根域名服务器的NS记录和IP地址一般是不会变化的,所以内置在DNS服务器里面,运营商的服务保存了根域名服务的IP地址。

三、浏览器如何向DNS服务器发出查询?

  1. 检查浏览器缓存
  2. 检查操作系统缓存,常见的如hosts文件
  3. 检查路由器缓存
  4. 如果前几步都没没找到,会向ISP(网络服务提供商)的LDNS服务器查询
  5. 如果LDNS服务器没找到,会向跟域名服务器(Root Server)请求解析,分为以下几步:

    • 根服务器返回顶级域名(TLD)服务器的地址
    • 接着向TLD发送请求,然后会返回次级域名(SLD)服务器的地址
    • 接着向SLD域名服务器通过域名查询目标IP,即返回www.baidu.com的地址
    • 本地DNS服务器会缓存结果,并返回给用户,缓存在系统中。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值