DNS :Domain Name System,域名系统 ,通俗的来说需要把我们日常见到的URL 网址信息解析成IP地址,例如

DNS域名解析过程

  • 用户浏览器:用户在浏览器地址栏输入域名进行访问,浏览器最先进行解析,先去浏览器缓存中找这个域名的IP地址。TTL 控制缓存时间限制,太长导致IP变化后域名无法解析,太短每次都要解析一次

  • 用户操作系统:如果用户浏览器缓存中没有域名的记录,就会去操作系统中查找是否有这个DNS解析结果,Windows用户下(Linux是 exc/hosts)其实就去找c:\windows\system32\drivers\etc这个里的hosts文件里面有没有,如果你在这里指定了一个域名、IP映射关系,那么实际上浏览器就会去访问这个IP,这也就是 域名劫持,如图我就我的localhost修改为pzh

  • Local DNS Server:如果etc文件中还没有这个记录,那么就会去这个本地服务器里面找,它可能是学校、小区所在地的DNS服务器,大约八成的解析工作在这里完成,即返回解析结构给浏览器。window下通过 ipconfig 查看 该服务器地址,Linux通过 $ cat /etc/resolv.conf查看,如果还没有找到就会去rootserver根域名服务器请求解析了

  • Root Server:根域名服务器会给本地服务器返回一个所查询域名所在的主域名服务器(gTLD server) 例如 .com .org .cn

背景导入:根服务器主要用来管理互联网的主目录,全世界只有13台(这13台根域名服务器名字分别为“A”至“M”),1个为主根服务器在美国。其余12个均为辅根服务器,其中9个在美国,欧洲2个,位于英国和瑞典,亚洲1个位于日本。毫不夸张的说如果这几台服务器出点问题,整个互联网都可能瘫痪。

gTLD Server: 国际顶级域名服务器,例如 .org .com .cn 等,根据跟服务器返回的向对应的 gTLD 服务器发送请求,然后gTLD 会返回该域名的 Name Server 地址

  • Name Server:该服务器就是 该域名所在的域名服务器,加入你购买一个某域名提供商的域名,那么该域名解析任务就有该域名提供商的 Name server完成。
  • GTM:实际上不只这些步骤可能更多,也可能不只一个name server 服务器,或者有一个GTM 来负载均衡控制

DNS解析方式

  • A记录:A是address ,可以将一个或者多个域名解析成一个IP地址,不能将一个域名解析出多个IP地址
  • MX记录:将某个域名下的邮件服务 xxx@aa.com => 1.1.1.1:xxx,其中aa.com 对应着 1.1.1.1
  • CNAME记录:别名解析,就是将一个域名设置成一个或者多个名字而已,
  • NS记录:该域名有指定的DNS服务器去解析
  • TXT记录:主机名或者域名设置txt记录说明

跟踪DNS域名解析过程

  • windows : cmd下输入 : nslookup www.baidu.com
  • Linux: dig www.baidu.com

清除DNS缓存

  • windows : cmd下输入 : ipconfig/flushdns
  • Linux: 可以通过 /etc/init.d/nscd restart 来清除缓存

Java Web 深入分析(2) DNS的更多相关文章

  1. Java Web 深入分析(6) Tomcat

    tomcat是什么:汤姆猫?Javaweb服务器? Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache ...

  2. Java Web 深入分析(8) Servlet工作原理解析

    Servlet Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态We ...

  3. Java Web 深入分析(7) Jetty原理解析

    1Jetty的基本架构 Jetty有一个基本的数据模型,这个模式就是handle,所有拷贝拓展的组件都被当做一个handler被添加到server中,然后由jetty统一管理. 1.1Jetty基本架 ...

  4. Java Web 深入分析(4) Java IO 深入分析

    I/O问题可以说是现在海量数据时代下 ,I/O大部分web系统的瓶颈.我们要了解的java I/O(后面简称为(IO)) IO类库的基本结构 磁盘IO的工作机制 网络IO的工作机制 NIO的工作方式 ...

  5. Java Web 深入分析(12) JVM(2) 垃圾收集与内存分配

    前言 java的内存分配和垃圾回收往往是影响系统性能和并发能力的主要因素,虚拟机提供许多的参数就是为了根据不同环境和请教下进行调优,没有最好的调优也没有固定的调优.需要我们深入的去了解jvm的各个垃圾 ...

  6. Java Web 深入分析(11) JVM(1)

    前言 Java启动后作为一个进程运行在操作系统中,该进程要分配的内存有以下几个: 1.Java堆: 存储java内存区域,堆大小是在jvm启动时就像操作系统申请完成,其中 -Xmx和-Xms 分别表示 ...

  7. Java Web 深入分析(11) JVM 体系结构与工作方式

    jvm体系 jvm简介 java virtual machine jvm体系详解 jvm工作机制 虚拟机怎么执行代码 jvm为何基于栈 执行引擎 执行引擎过程 java调用栈 总结

  8. Java Web 深入分析(10) Spring 实践

    Spring helloworld [http://wiki.jikexueyuan.com/project/spring/hello-world-example.html] HelloWorld.j ...

  9. Java Web 深入分析(9) Session 和 Cookie

    前言: session 和cookie都是为了保持服务器和客户端之间交互状态.如果一天的PV有几亿,而一个cookie占200个字节但是也会占用很多带宽?所以大访问量就引用session,但是几百台服 ...

随机推荐

  1. Oracle 11c下载 及连接到OracleDB的简单程序

    Oracle官网总是不太贴心.还是网友贴心. https://pan.baidu.com/s/1ZCFLUi4Ti_WUYOFR3gB2dA 是11g版本下载包,下载下来解压就能用了. 安装完毕后,驱 ...

  2. 使用Flask构建机器学习模型API

    1. Python环境设置和Flask基础 使用"Anaconda"创建一个虚拟环境.如果你需要在Python中创建你的工作流程,并将依赖项分离出来,或者共享环境设置," ...

  3. 002-poi-excel-导出设置单元格数据校验规则、筛选功能

    一.数据验证概述 推荐以下操作在2007之后操作 1.1.查看excel的数据验证 1.进入 2.设置规则 通过验证条件允许,可以看到是每个单元格默认只成立一种条件 1.2.POI代码开发-数据验证 ...

  4. Flutter布局基本情况总结:

    1.一行内容,发布两边: 效果: Flex( direction: Axis.horizontal, children: <Widget>[ Expanded( flex: , child ...

  5. win10下安装Kafka

    去kafka官网(http://kafka.apache.org/downloads.html)下最新包(目前是2.3.0),不分操作系统,直接点二进制压缩包链接跳过去下载即可 -> 解压到你指 ...

  6. 阶段5 3.微服务项目【学成在线】_day17 用户认证 Zuul_18-身份校验-测试

    在顶级域名下配置 网关的地址在上面配置一下 重启nginx 拒绝访问后面的代码都加上 return null 开始测试 换成域名的方式访问 有cookie.但是拿不到header 加上header测试 ...

  7. 阶段5 3.微服务项目【学成在线】_day17 用户认证 Zuul_13-用户退出-前端

    调试前端的退出 logout方法 找到路由 退出对应的组件页面 这就是退出的组件 退出的方法 把这两个js的引用,从上面复制到下面引用.因为可能存在js的冲突问题. 资料里面给了一个前端 整个覆盖当前 ...

  8. Qt编写自定义控件45-柱状标尺控件

    一.前言 这个控件写了很久了,是最早期的一批控件中的一个,和温度计控件类似,都是垂直的进度条,可以设置不同的背景颜色,左侧的刻度也可以自由设定,还提供了动画效果,其实就是开启定时器慢慢的进度到设定的目 ...

  9. 单层反查BOM

    *&---------------------------------------------------------------------* *& Report YCX_001 * ...

  10. LeetCode_66. Plus One

    66. Plus One Easy Given a non-empty array of digits representing a non-negative integer, plus one to ...