网络协议相关面试问题-DNS相关面试问题
对于网络上的大部通讯都是基于TCP/IP协议的, 其中最重要的是IP协议,它是基于IP地址的,而计算机通讯只能识别IP地址,如192.168.0.1,而不能识别像咱们在浏览器敲得见名之义的"www.baidu.com"这样的域名,但是呢有一个DNS服务器的计算机会自动把咱们输入的域名翻译成了网络通讯所需要的ip地址,这就是DNS协议,下面来了解一下它。
什么是DNS?
它所提供的服务是用来将主机名和域名转换为IP地址的工作,如下:

可以相互进行转换。
DNS查询过程:
递归:DNS服务器可使用其自身的资源记录信息缓存来应答查询,也可代表请求客户机来查询和联系其他DNS服务器,以完全解析该名称,并随后将应答返回至客户机。
迭待:客户机自己也可尝试联系其它的DNS服务器来解析名称,如果客户机这么做,它会使用基于服务器应答的独立和附加的查询。下面看一下迭待的具体过程:
浏览器输入域名后,就会先在本地的HOSTS文件中找有木有相应域名跟ip地址的对应关系,如果有则调用该ip地址完成域名解析;如果说本地HOSTS文件中木有映射的话那就到“本地DNS解析缓存”去找,找到对应的映射信息最终返回给浏览器;如果也没有找到则就进行第三部去“本地DNS”查找,而它是根据TCP/IP首选设置的服务器,如果能在本地DNS区域中找到就会返回解析结果给客户端完成域名解析,注意:这个解析是有权威性的,而不像第四步,所以这里总结一下:
1、在浏览器中输入域名,操作系统会先检查自己本地的HOSTS文件是否有这个网址映射关系。
2、如果HOSTS里没有这个域名的限制,则查找本地DNS解析器缓存。
3、如果本地HOSTS与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/IP参数中设置的首选DNS服务器。注意:这个查询是具有权威性的。
4、如果要查询的域名,不由本地DNS服务器区域解析,但该DNS服务器已经缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析。注意:这个区域查询是没有权威性的。
5、本地DNS就把请求发至13台根DNS,根DNS服务器收到请求之后会判断这个域名(.com)是谁来授权管理的,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。注意:它是没有用转发模式。
6、如果用的是转发模式,此DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析。需要注意:如果上一级服务器不能解析,还会继续找根DNS,或者把请求转发给上上级,以此循环来进行DNS解析。
网络协议相关面试问题-DNS相关面试问题的更多相关文章
- 网络协议学习笔记(八)DNS协议和HttpDNS协议
概述 上一篇主要讲解了流媒体协议和p2p协议,现在我给大家讲解一下关于DNS和HttpDNS的相关知识. DNS协议:网络世界的地址簿 在网络世界,也是这样的.你肯定记得住网站的名称,但是很难记住网站 ...
- Java 面试知识点解析(五)——网络协议篇
前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...
- 你所不知道的 CSS 阴影技巧与细节 滚动视差?CSS 不在话下 神奇的选择器 :focus-within 当角色转换为面试官之后 NPOI 教程 - 3.2 打印相关设置 前端XSS相关整理 委托入门案例
你所不知道的 CSS 阴影技巧与细节 关于 CSS 阴影,之前已经有写过一篇,box-shadow 与 filter:drop-shadow 详解及奇技淫巧,介绍了一些关于 box-shadow ...
- 2019上半年总结——Github上那些Java面试、学习相关仓库
分享一下最近逛Github看到了一些对于Java面试以及学习有帮助的仓库,这些仓库涉及Java核心知识点整理.Java常见面试题.算法.基础知识点比如网络和操作系统等等. 知识点相关 1.JavaGu ...
- php面试专题---10、网络协议考点
php面试专题---10.网络协议考点 一.总结 一句话总结: 网络的考点其实就是这些:常见状态码,常见协议,osi七层模型,http和https 1.HTTP/1.1中,状态码200.301.304 ...
- PHP面试 PHP基础知识 十(网络协议)
网络协议 HTTP协议状态码 状态分为五大类:1XX.2XX.3XX.4XX.5XX 1XX:信息类状态码 表示接受请求正在处理 2XX:success 成功状态码 请求正常处理完毕 3XX:重定 ...
- (转) 前端面试之js相关问题(一)
原帖地址:http://stephenzhao.github.io/2016/08/19/Front-end-Job-Interview-Questions/ 最近我也是经历过面试别人和去面试的人了, ...
- OSI 七层模型和 TCP/IP 四层模型 及 相关网络协议
简介 OSI 是理论上的模型,也就是一个统一的国际标准,现在的很多网络设备或者是网络协议都不同程度的精简了自己的所谓的模型,那么他们为了自己的通讯兼容都会参考这个OSI模型 TCP/IP 包括: TC ...
- PHP网络协议相关考点
HTTP状态码 HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码. HTTP状态码主要有5种,代表5种不同类型的响应: 1xx:信息性状态码,代表接 ...
随机推荐
- C# 关于App.config
App.config是winfrom等程序的应用程序配置文件,用来存放一些参数. app.config只会在应用程序启动时加载一次. 当程序在运行中修改app.config中的参数是不会生效,必须要重 ...
- vue-router跳转相同路径报错
import Vue from 'vue' import Router from 'vue-router' // hack router push callback const originalPus ...
- 微信图片上传 wx.Imagechoose
拍照或从手机相册中选图接口 wx.chooseImage({ count: 1, // 默认9 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩 ...
- Capacity To Ship Packages Within D Days
A conveyor belt has packages that must be shipped from one port to another within D days. The i-th p ...
- [转帖]方正数码发布基于龙芯3A3000系列整机
方正数码发布基于龙芯3A3000系列整机 http://www.loongson.cn/news/company/730.html 方正数码也出过龙芯相关的服务器和PC笔记本等 发布时间:2019-0 ...
- 【转帖】linux下的各个目录的含义
linux下的各个目录的含义 http://embeddedlinux.org.cn/emb-linux/entry-level/200809/22-85.html/bin/usr/local/bin ...
- Oracle的基本操作-序列的使用
序列:默认从1开始,一次递增,主要用来给主键赋值使用 create sequence s_person; select s_person.nextval from dual; --dual是一张虚表, ...
- 状压DP--Rotate Columns (hard version)-- Codeforces Round #584 - Dasha Code Championship - Elimination Round (rated, open for everyone, Div. 1 + Div. 2)
题意:https://codeforc.es/problemset/problem/1209/E2 给你一个n(1-12)行m(1-2000)列的矩阵,每一列都可以上下循环移动(类似密码锁). 问你移 ...
- Ansible-批量导入key(入门)
系统是centos7.5 python2.75 yum install -y ansible ssh-keygen -t rsa vim /etc/ansible/hosts 定义的一个hello组: ...
- X86逆向8:向程序中插入新区段
本节课我们不去破解程序,本节课学习给应用程序插入一些代码片段,这里我就插入一个弹窗喽,当然你也可以插入一段恶意代码,让使用的人中招, 这里有很多原理性的东西我就不多罗嗦了毕竟是新手入门教程,如果想去了 ...