互联网是通过URL来发布和请求资源的,而URL中的域名需要解析成IP地址才能与远程主机建立连接。当用户在浏览器中输入 www.baidu.com时,DNS会将域名解析成IP地址,然后再去匹配对应的IP地址。


步骤一:当在浏览器中输入域名按下回车键后,浏览器会检查缓存中有没有这个域名对应的解析过的IP地址。如果缓存有,解析结束。浏览器缓存域名在大小和时间上都是有限制的。缓存时间可由TTL属性来设置缓存时间太长太短都不好,太长,会导致IP解析有变化,会导致域名不能正常解析,部分用户无法访问网站。缓存时间太短,用户每次都需要重新解析一次域名。

步骤二:如果用户的浏览器中缓存没有,浏览器会查找操作系统中是否有这个域名对应的DNS解析结果。其实操作系统中也会有一个域名解析的过程,在windows中可以通过c:\\windows\system32\drivers\etc\hosts文件来设置,你可以将任何域名解析到任何能够访问的IP地址。(黑客劫持域名)步骤一和步骤二都是由本机完成的。

步骤三:当机无法完成域名解析,就会真正请求域名服务器来解析这个域名了。我们怎样知道域名服务器?网络配置中都会有“DNS服务器地址”操作系统会把这个域名发送到设置中的LDNS,也就是本地的域名服务器。DNS通常都会提供给你本地互联网接入的一个DNS服务器。比如你在学校,那么这个DNS服务器一定在你们学校。WIndows中可由ipconfig查询这个地址。

步骤四:如果LDNS仍然没有解析到,就直接到Root Service域名解析器请求解析

步骤五:根域名服务器返回给本地域名服务器一个所查询余的主域名服务器(gTLDServer)地址。gTLD是国际顶级域名服务器,如:.com/.cn/.org等,全球只有13台左右。

步骤六:本地域名服务器(Local DNS Server)再向上一步返回的gTLD服务器发送请求

步骤七:接收请求的gTLD服务器查找并返回此域名对应的Name Server域名服务器的地址,这个Name Server通常就是你注册的域名服务器(如你的域名供应商)

步骤八:Name Server域名服务器会查询存储的域名和IP的映射关系表,正常情况下都根据域名得到目标IP记录,连同一个TTL值返回给DNS Server域名服务器

步骤九:返回该域名对应的IP和TTL值,Local DNS Server会缓存这个域名和IP的对应关系,缓存的时间有TTL值控制。

步骤十:把解析的结果返回给用户,用户根据TTL值缓存在本地系统缓存中,域名解析过程结束。

在实际的DNS解析过程中,可能还有更多的步骤,如Name Server也可能有多级,或者有一个GTM来负载均衡控制,都可能影响域名解析的过程。更多内容,可参考以下数据

本文参考书籍:《深入分析Java Web技术内幕》

浅谈DNS域名解析过程相关推荐

  1. 浅谈DNS域名解析的过程

    用户在浏览器输入www.baidu.com时,DNS域名解析大致分为以下几个过程: 浏览器客户端检查自身有没有该域名的缓存: 如果浏览器有命中,直接返回该域名对应的IP地址,解析结束; (这个缓存可以 ...

  2. 浅谈DNS体系结构:DNS系列之一

      浅谈DNS体系结构<?XML:NAMESPACE PREFIX = O /> DNS是目前互联网上最不可或缺的服务器之一,每天我们在互联网上冲浪都需要DNS的帮助.DNS服务器能够为我 ...

  3. 浅谈CC防御过程中,WAF的主要特点有哪些?

    浅谈CC防御过程中,WAF的主要特点有哪些?一部分网站和游戏,以及金融的企业网站负责人员对于流量攻击应该属于耳熟能详.对此问题一直也是他们最头疼的.因此在解决DDoS攻击和CC攻击防御的过程中,运用了 ...

  4. 深入分析Java Web技术内幕读书笔记(二)浅析DNS域名解析过程

    上一篇文章<浅析Web请求过程>讲述的是如何发起HTTP请求,对于请求发起过程中很重要的一个步骤--DNS解析过程的描述是一带而过,本篇文章将跟着DNS解析过程来分析域名是如何解析的. 一 ...

  5. DNS域名解析过程详解

    1. DNS概述 域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址. 2. 因特网的域名结构 由于因特网用户众多,所以命名时, ...

  6. 多张图带你彻底搞懂DNS域名解析过程

    目录 1.DNS 2.域名系统DNS 的作用 3.域名的层级关系 4.DNS域名解析过程 递归查询 迭代查询 5.高速缓存 6.DNS相关面试问题 1.DNS DNS(Domain Name Syst ...

  7. [计算机网络]DNS域名解析过程

    DNS域名解析过程 dns 即是 domain name system 域名系统的缩写,将域名和 ip 的映射关系保存在一个分布式数据库中. 首先我们要明确一个观点.运行浏览器或者任何应用程序的主机和 ...

  8. 计算机网络笔记:DNS域名解析过程

    基本概念 DNS是域名系统(Domain Name System)的缩写,也是TCP/IP网络中的一个协议.在Internet上域名与IP地址之间是一一对应的,域名虽然便于人们记忆,但计算机之间只能互 ...

  9. dns域名解析过程——从浏览器输入网址到页面显示的中间过程

    BEGIN: 一.域名 1.域名(domain name)也叫做网域,是英特网上的一个服务器或者一个网络系统的名字,域名具有唯一性,在传输数据时作为定位标识,全球没有重复的域名.域名的形式是由若干个字 ...

最新文章

  1. npm安装过程出现的问题及解决方式
  2. python自带库处理excel-python 学习(三)数据库、EXCEL处理
  3. 【MySQL数据库】一天学完MySQL笔记——纯SQL文档版
  4. [Java基础]Stream流综合练习
  5. PostgreSQL PL / java简介
  6. c6x Linux 内核中断分析
  7. 用渐变色画圆_详细步骤!用ps画个中秋圆月亮
  8. Statefulset:部署有状态的多副本应用
  9. java程序设计教程(项目式)_《Java程序设计项目化教程(第2版)》怎么样_目录_pdf在线阅读 - 课课家教育...
  10. C#中的高级测试驱动开发
  11. Kubernetes学习总结(11)—— Kubernetes Pod 到底是什么?
  12. 疫情严峻!有高校不放寒假,直接开始新学期!还有高校紧急放假,停止考试直接回家...
  13. Linux运维基础入门知识
  14. c语言网格搜索,使用逻辑回归时怎么利用网格搜索来查找degree,c等超参数
  15. android wifi分析 实现原理,解析android 流量监测的实现原理
  16. idea 和tomcat 中文乱码问题
  17. 微信公众号跳转微信小程序,自定义微信跳转标签
  18. 亚声速-超声速等熵喷管拟一维流动的CFD解法(附完整代码)
  19. C#中操作Word(8)—— 向Word中插入图表的三种方法(一)
  20. 常耀俊老师经典《非人力资源经理的人力资源管理》课程

热门文章

  1. N42-WeekNine
  2. SDL用法:PiratesHo!全集
  3. Page 对象与 list 对象的相互转换
  4. web前端入门到实战:五个最新的CSS特性以及如何使用它们
  5. [BCNet] Deep Occlusion-Aware Instance Segmentation with Overlapping BiLayers(CVPR. 2021)
  6. Android 10.0 关机对话框UI定制化开发(二)
  7. 贝叶斯生成对抗网络(GAN)
  8. LAMP架构之nginx:nginx重定向+防盗链
  9. C++缘分测试,来测测你和“她”的缘分(仅娱乐)
  10. oracle数据库关闭失败,Oracle数据库关闭时出现ORA-03113错误