DNS域名解析过程

域名解析过程:

1、浏览器会检查缓存中有没有这个域名对应的解析过的IP地址,如果缓存中存在,此解析过程到此就已经结束。

2、如果用户的浏览器缓存(通过host文件进行设置)中没有,浏览器接下来会去操作系统缓存中查找是否有这个域名对应的DNS解析数据。

3、前面两个步骤都是在本机中进行的,如果再本机中没有找到解析的IP缓存,操作系统就会把这个域名发送到本地区的域名服务器(Local DNS Server)LDNS。这个专门的域名解析服务器的性能一般都会很好,他们一般都会缓存域名的解析结果。其实大约有80%的域名解析的工作到这里就已经完成了,所以LDNS主要承担域名的解析工作。

4、如果LDNS还没有找到,就会直接到Root Server域名服务器请求解析。根域名服务器会返回给LDNS一个所查询域的主域名服务器(gTLD Server)地址(gTLD是国际顶级的域名服务器)。

5、LDNS再向上面接受的gTLD服务器发送请求。接收请求的gTLD服务器查找到此域名对应的Name Server域名服务器(Name Server通常就是你注册的域名服务器,假如你在某个域名服务商申请的域名,那么这个域名解析的任务就会由这个域名提供商的服务器来完成)的地址并返回。

6、Name Server 域名服务器会查询存储的域名和IP的映射关系表(正常情况下,会根据域名得到目标的IP记录,和一个TTL值),返回给DNS Server域名服务器。Local DNS Server会缓存这个域名和IP对应的关系,缓存的事件由TTL值控制。

7、把解析的结果返回给用户,用户本机系统会根据TTL值来进行缓存。

大概的解析过程就是这样的,但是实际中可能还有更加复杂的解析过程,比如Name Server是多级的,或者通过一个GTM来进行负载均衡的控制等。

清除缓存的域名

DNS解析的域名主要再两个地方进行缓存,一个是Local DNS Server,另一个是本机。并且这两个缓存都是通过TTL值和本机缓存大小控制的,但是最大缓存时间是TTL值。基本上Local DNS Server的缓存时间就是TTL控制的,很难人工进行介入。

本机缓存,Windows下在命令行模式下执行ipconfig/flushdns命令来刷新缓存。

在Java应用中JVM也会缓存DNS的解析结果,这个缓存是在InetAddress类中完成的,而且这个缓存时间有两种缓存策略:一种是正确解析结果缓存(在配置项networkaddress.cache.ttl配置,默认值是-1(永不失效)),一种是失败的解析结果缓存(在配置项networkaddress.cache.negative.ttl配置,默认值10(缓存10秒))。这两个配置项是在%JAVA_HOME%\lib\security\java.security文件中配置的。

注意:如果我们需要用InetAddress类解析域名时,一定要是单例模式,不然会有严重的性能问题,如果每次都创建InetAdress实例,每次都要进行一次完整的域名解析,非常耗时。

几种域名解析方式

A记录。A代表的时Adress,用来指定域名对应的IP地址。A记录可以将多个域名解析到一个IP地址,但是不能将一个域名解析到多个IP地址。

MX记录。表示的时Mail Exchange,就是可以将域名下的邮件服务器(Mail Server)指向自己

的。

CNAME记录。Canonical Name(别名解析)。就是可以为一个域名设置一个或者多个别名。

NS记录。为某个域名指定DNS解析服务器。

TXT记录。为某个主机名或者域名设置说明。

java dns 解析域名解析_JavaWeb(3)DNS域名解析相关推荐

  1. android 自定义dns解析器,Android中DNS解析

    当服务端IP变化,大量用户还是访问的以前的IP,连接不上服务器. 我们的客户端软件如何通过域名正确访问服务器?这里面主要涉及到DNS缓存的问题. 什么是DNS? DNS 是域名系统 (Domain N ...

  2. 2.ipv6苹果上线 新网域名不支持AAAA 域名DNS解析AAAA -----如何将DNS从新网转到DNSPod?

    转自:http://blog.csdn.net/zhanglizhi111/article/details/79196670 最近新网的大姨妈又开始了,导致了我很多域名无法解析,新网这样频繁出问题实在 ...

  3. 6个免费DNS解析服务商评测分析 适用于网站域名解析应用

    这几天我们很多网友应该知道CloudXNS DNS解析服务商预计7月15日会宣布停止提供免费解析服务而主营商业服务.虽然网络上提供免费DNS解析服务商很多,但是毕竟这么多年CloudXNS域名解析稳定 ...

  4. 多活主备选择性DNS解析(一个域名对应多个IP)

    多活主备选择性DNS 问题背景 知识背景 DNS解析存在多级缓存(此处仅列举到DNS服务器层:后续流程不涉及) DNS一对多域名的解析随机性 DNS 域名解析负载均衡缺点: 可能方案 方案一.dns解 ...

  5. 从Chrome源码看DNS解析过程

    DNS解析的作用是把域名解析成相应的IP地址,因为在广域网上路由器需要知道IP地址才知道把报文发给谁.DNS是Domain Name System域名系统的缩写,它是一个协议,在RFC 1035具体描 ...

  6. 全球免费公共 DNS 解析服务器 IP 地址列表推荐 (解决无法上网/加速/防劫持)

    全球免费公共 DNS 解析服务器 IP 地址列表推荐 基本上接触过网络相关知识的人应该多少都会听过 DNS 这个名词.因为 DNS 它非常重要,在我们上网的过程中扮演着重要的角色--"将网址 ...

  7. 常见的DNS记录类型有哪些?如何查询DNS解析记录?

    当搭建一个新网站时,DNS查询工具对查询网站DNS解析记录方面很有帮助.除了在设置新网站时有用外,正确的DNS对于更新现有网站的记录以及检查邮件服务器(如公司内部邮件网络)的设置也是必不可少的. DN ...

  8. 【计网】DNS解析 DDNS解决动态公网IP访问

    DNS服务与DDNS 前言 一.DNS服务 二.DNS域名解析 1.解析过程 2.DNS污染 三.DDNS解决动态公网IP访问 总结 前言 本篇主要记录一下DNS域名解析在我们平时上网时的使用,与DN ...

  9. 详解DNS服务、DNS解析、DNS劫持和污染

    简介 DNS(全称:Domain Name System,中文:域名系统)是互联网的一项服务.它作为将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便地访问互联网.1 前言 要想弄清楚 D ...

  10. F5 GTM DNS 知识点和实验 3 -加速dns解析

    第三章:加速dns解析 目标: 了解一个请求是如何发送到一个dns资源池中的,并且了解如何监控资源池中成员的健康状态 使用dns缓存对dns请求进行加速 使用dns express进行对dns请求进行 ...

最新文章

  1. F5第一个10000台
  2. iphonex如何关机_iphonex常用手势操作有哪些 iphonex常用手势操作介绍【详解】
  3. 嵌入式科普:基本概念,设计流程,开发特点,如何学习
  4. (计算机组成原理)第一章计算机系统概述-第一节:计算机发展历程
  5. MMS 协议学习笔记
  6. Leetcode每日一题:34find-first-and-last-position-of-element-in-sorted-array(排序数组中查找某元素的两端位置)
  7. [MySQL FAQ]系列 -- MySQL怎么有时候像是多进程,有时候却是多线程
  8. vue 日期面板_VUE项目中如何方便的转换日期和时间
  9. Android心电数据分析,Android系统下的心电数据分析软件设计
  10. 爬虫--爬取人人网案列(一)
  11. linux系统转移到另一个硬盘,(扩展根目录容量方法汇总)把Linux系统迁移到另一个分区或者硬盘...
  12. 双硬盘双win10互不干扰_双硬盘双系统 完全独立|硬盘安装Win10单双系统的详细步骤...
  13. 安装python3.5.0出现0x80072eff错误_我在网上用WINDOWS UPDATE更新WINDOWS,出现错误:0x80072EFF,该怎么办?...
  14. A+B 问题【OJ 示例题目】
  15. 转自汇编网: 高三老师给大一学生的一封信(感动!)
  16. 入学校计算机社团申请书,学校社团成立申请书
  17. VS2010 调用的目标发生了异常
  18. OJ-malic竞赛04
  19. DDOS攻击检测和防护
  20. 计算机网络思科平台第四章测验答案

热门文章

  1. 基于Spring-statemachine的有限状态机(FSM)的介绍及示例
  2. python中分号中没内容_被“嫌弃”的分号的一生:不要在Python中使用无用分号了...
  3. 浏览器打开页面的几种方式
  4. 苹果笔记本怎么找文件夹_教你如何在苹果电脑上查看隐藏文件夹
  5. word上下的横线怎么去掉_word文档上面有一条横线怎么去掉
  6. 2021招生之友+录取统计_电子版免费分享
  7. Linux | 记一次Linux服务器被入侵后的检测过程
  8. 图片颜色和相机的一些基本知识
  9. 探测器类的电路设计流程框图
  10. 前端连接websocket失败_websocket连接失败后多久会触发error事件?