前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DNS 原理

DNS 原理

作者头像
java404
发布2020-04-09 11:45:53
9700
发布2020-04-09 11:45:53
举报
文章被收录于专栏:java 成神之路java 成神之路

概述

DNS (Domain Name System)域名系统。是提供根据域名找到对应的 IP 的服务。 Http 协议访问一个网址时,其实是根据 ip 地址进行访问的,所以需要把 域名转换成IP,在进行访问。

DNS 记录表

DNS 服务器数据存储格式类似下面表格。

域名

Class

记录类型

响应数据

www.baidu.com

IN

A

163.177.151.110

126.com

IN

MX

10 mail.126.com

mail.126.com

IN

A

123.126.96.212

  • 域名 服务器、邮件服务器的名称
  • Class 目前只有 IN 一种 Class。代表 Internate。
  • 记录类型 A:Address,表示这条记录存储是 ip 地址 MX: mail exchange,表示这条记录是邮件服务器 PTR:表示 IP 反查域名 NS: 查询DNS 服务器IP地址 CNAME:查询域名别名 SOA:查询域名属性信息 ...

查询 DNS

查询 DNS 时,需要传入三个参数:域名、Class、记录类型。然后DNS根据传入的这三个参数信息去DNS 表中查询对应的数据,并返回响应数据。 比如:

  • 查询条件 域名=www.baidu.com Class=IN 记录类型=A
  • 返回结果 响应数据=163.177.151.110

DNS 请求原理

当浏览器打开一个网站时首先会从浏览器缓存中获取域名对应的ip,如果获取不到,则从 host 文件中获取,如果还是无法获取到,则开始去 DNS 服务器中获取,如下图。

比如请求解析的域名为: www.baidu.com

第①步,请求电脑上配置的 DNS 服务器,DNS 服务器也可以有多个层级,比如:公司内部可以搭建一个DNS 服务器,公司DNS 服务器获取不到,可以去当前市级 DNS 服务器,市级 DNS 服务器获取不到然后到 省级 DNS 服务器。

第②步:DNS 服务器获取不到ip,则会请求根DNS服务器,根DNS服务器,可以根据你请求的域名,判断属于哪个顶级域名,然后把顶级域名 DNS 服务器的ip 返回,此时返回的是 com。

根DNS 服务器的ip,全球只有13个,这13个ip地址是固定不变的,因此可以将这13个ip 内置到 所有的 DNS 服务器中,这样就可以保证能解析到任何的域名。

就这样经过 ③、④、⑤步, DNS 服务器就可以把 www.baidu.com 的域名对应的ip 解析出来,并缓存到当前的 DNS 服务器中,然后返回到用户。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • DNS 记录表
  • 查询 DNS
  • DNS 请求原理
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档