computer networking ---------DNS
【DNS】domain named system
域名解析系统,即相当于对www.baidu.com的类似的域名进行解析,对于人而言,记忆一些域名相比于记忆一些Ip地址来说简单的多,而对于计算机而言,特别是web网络浏览器或者路由器而言,由于ip本身就是32位的数据,这就使得计算机在处理这些数据上特别的方便和快捷,对于浏览器而言,当键入一个域名的时候,一般是不能进行访问的,一般需要特定的DNS解析系统进行域名到IP地址之间的一个转换,这样web浏览器才能给指定的IP地址发送http的报文进行数据之间的交换,在当下网络的分布情况而言,本质上是数据交换的网络,而围绕着数据交换这一个主题便产生了许许多多的问题。
DNS服务器的分类:
- TLD服务器(也叫顶级域名服务器),从www.baidu.com的地址结构来看,.com 就是顶级域,由此往下便产生了二级域名,由此可见子域名是一个相对的概念。
- 本地域名服务器:在web网页要访问www.baidu.com的域名的地址的进程的时候,进程要获取www.baidu.com的IP地址,首先进程先给本地域名服务器发送一个DNS请求报文,然后本地DNS查找当前的DNS缓存,如果在缓存中查找到,则直接返回IP地址给当前进程进行查询。可以指出的是本地DNS服务器并不在DNS分布式结构之下,但又是DNS服务器结构中不可或缺的一部分。
- 权威DNS服务器
当有新的域名注册的时候,你需要提供给域名注册商两个DNS记录,一个是NS类型的,一个A类型的。就www.baidu.com而言(讨论中忽略):
【关于DNS解析过程的产生】
假设现在有两台主机分别是A:a.ssd.edu和B:b.ssc.dfx.前者想要获得后者的IP地址的时候,主要有以下步骤:
- A首先发送B的域名给本地的DNS服务器,如果本地服务器的DNS缓存中有则返回给用户一个IP地址(这个时候的客户是进程)
- 如果A的DNS缓存中没有的时候,本地服务器发送域名给.edu根DNS服务器,这个时候的客户变成了A的主机,由上面叙述的那样,根域名服务器缓存中如果有则返回IP,否则返回的是ssd.eduDNS服务器的地址,然后进行对sss.edu服务器的访问返回需要的A的IP.
- 然后根据所返回的IP地址进行与对应主机进行连接。
【remark】
上述的DNS解析过程仅仅局限在两个主机之间的解析,下面考虑整个网络中的DNS解析过程。
就TLD服务器而言,全球共由240多个服务器站点,但这不是说TLD服务器就只有240多个,当然可以建立许多的镜像服务器进行数据的交换,还有许多由国家分类的TLD域名,例如中国就是.cn,美国就是.us.\
【关于注册域名的问题】
在互联网上要想申请一个域名,必须在域名注册商哪里进行注册,然后进行上传到由域名注册商所维护的TLD服务器中,然后才可以与其他人进行数据的交换,
【DEF】给出关于资源记录的概念
在所有的DNS服务器中存储的实际上是RR(资源记录),资源记录决定着和IP地址之间的映射关系,并且返回给客户,
一条资源记录通常由(name, value type TTL);
其中TTL是决定资源能否在DNS服务器中存储多少的时间,因为DNS服务器是一个物理存储,由你的接入网络的ISP进行维护,当然是由限制的存储,所以到一定时间就需要初始化,TTL就决定了初始化的时间。
- 关于资源记录的分类的问题(主要是看type字段的分类)
当type=A的时候name 代表的是主机名,value代表的是IP地址(和name进行匹配的)
当type=NS的时候,name代表的是是一个域,而value代表的如何获取该域中的主机IP的权威服务器的主机名(然后由这个主机名进行返回一个A记录,就得到了客户所需要的IP地址)
还有CNAME和MX的分类,不做讨论
【IN summary】
用宏观的角度观察在计算机网络中的DNS解析系统的时候,想想一张全球的表,当你在访问一个网站的时候,被这些网站上的精彩信息所吸引,单在这背后,还有远比浏览网页更吸引眼球的复杂事情正在发生。
就像上图一样,带着英文字母的代表的就是TLD服务器,当你要访问一个网站的时候,就类似于上面讨论的过程发送DNS请求——>返回主机IP,但是每天有数不胜数的DNS请求被互联网的各个部分以复杂的过程进行处理,复杂意味着肯定会有疏忽,当然就产生了漏洞,也就是DNS攻击的产生:
一般来说就是伪造域名
发送大量的DNS请求让服务器进行瘫痪
computer networking ---------DNS的更多相关文章
- Computer Networking: A Top Down Approach
目录 Chapter 1: Computer Networks and the Internet 1. What is the Internet? 2. The Network Edge 3. The ...
- A Simple Introduction To Computer Networking
Most networking discussions are a jumble of acronyms. Forget the configuration details - what are th ...
- Software Defined Networking(Week 2, part 1)
History of SDN 1.1 - 1.2 本节讨论从上世纪八十年代时到现在为止出现的SDN的思想和发展历史.了解历史,可以明白技术后面的成因以及一些原则,并从架构上去大致掌握.了解一些主旨. ...
- Computer Neworking: A Top-Down Approach
目录 Chapter 1: Computer Networks and the Internet 1. What is the Internet? 2. The Network Edge 3. The ...
- Software-Defined Networking: A Comprehensive Survey
文章名称:Software-Defined Networking: A Comprehensive Survey 文章来源:Proceedings of the IEEE ( Volume: 103 ...
- CentOS / Redhat : Configure CentOS as a Software Router with two interfaces
CentOS / Redhat : Configure CentOS as a Software Router with two interfaces Linux can be easily co ...
- ipconfig命令
C:\Windows\System32>ipconfig -all Windows IP 配置 主机名 . . . . . . . . . . . . . : LuJunTao 主 DNS 后缀 ...
- 获取本机的ip
https://4sysops.com/archives/ipv6-tutorial-part-6-site-local-addresses-and-link-local-addresses/ In ...
- Networked Graphics: Building Networked Games and Virtual Environments (Anthony Steed / Manuel Fradinho Oliveira 著)
PART I GROUNDWORK CHAPTER 1 Introduction CHAPTER 2 One on One (101) CHAPTER 3 Overview of the Intern ...
随机推荐
- python3中用django下载文件,中文名乱码怎么办?
前段时间被某个前端小可爱鄙视了一下,说我博客都一年不更新了,我不服,明明还有俩月才到一年呢.不过说是这么说,还是要更新一下的. 以上都是借口,下面开始正文. 我公司的某个内部系统,用djang ...
- 我已经看到了,撤回也没用了(PC微信防撤回补丁)
前两天看 GitHub 发现一个有趣的项目,PC微信防撤回补丁,本着研究学习的目的,在看过源码,一顿疯狂操作之后,了解了其原理是基于修改 wechatwin.dll 达到防撤回的. 于是乎,自己动手玩 ...
- C# HTTP系列1 HttpWebRequest类
系列目录 [已更新最新开发文章,点击查看详细] .NET Framework 中 System.Net 命名空间下提供了 HttpWebRequest 和 HttpWebResponse 2个 ...
- JavaScript 系列--JavaScript一些奇淫技巧的实现方法(三)数字取整,数组求和
一.前言 简短的sleep函数,获取时间戳:https://www.mwcxs.top/page/746.html 数字格式化 1234567890 --> 1,234,567,890:argr ...
- 1 datax 安装和简单使用
DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL.Oracle.SqlServer.Postgre.HDFS.Hive.ADS.HBase.TableStore(O ...
- 【08月02日】A股滚动市盈率PE历史新低排名
2010年01月01日 到 2019年08月02日 之间,滚动市盈率历史新低排名. 上市三年以上的公司,2019年08月02日市盈率在300以下的公司. 1 - XD栖霞建(SH600533) - 历 ...
- W5500嵌入式开发
W5500是韩国一款集成全硬件 TCP/IP 协议栈的嵌入式以太网控制器,W5500同时也是一颗工业级以太网控制芯片,最近发现我们国内也有和W5500 芯片一样芯片 介绍给大家 如下图:
- useEffect传入第二个参数陷入死循环
最近新项目刚上手,就用了react的hooks,之前也看过hooks的不少文章,只是还没实战实战. 业务场景1:需要在页面一开始时得到一个接口的返回值,取调用另一个接口. 我的思路是,先设置这个接口的 ...
- RecyclerView预览数据
我们在布局文件里定义RecyclerView时,可以使用tools属性预览数据,如下: <android.support.v7.widget.RecyclerView android:layou ...
- 【git】【Idea】git刷新获取远程分支列表,可以在idea上看到最新的远程分支列表
[前提:本地项目是从GitLab或gitHub这些远程仓库上拉下来的 ,并且本地安装了git] ==================================================== ...