换一种视角看DNS

我们尽量用精炼的语言,尽可能的规划DNS的全貌(当然笔者水平有限,如有错误请不吝赐教)。

通常啊我们在个人PC中能看到DNS的配置身影就是在上网的时候,通常如果你不配置DNS可能找不到IP地址等等,那这是我们就回去配置一个DNS服务器,我们可以吧DNS服务器理解为地址簿,没错漫游在全网的地址簿;那你想过没有它背后的作用呢?我们继续看。

1、什么是DNS服务?

DNS服务全程Domain Name System,中文译名为域名系统。就是互联网中地址簿,通常我们PC端都是自动获取,有过管理服务器的效果版一般手工配置的多。

DNS是一个超大的地址簿,但是呢统一管理太麻烦怎么办呢?分层管理,非常类似郡县制,然后一层一层划分下去,我们以百度的域名为例说一下:

www.baidu.com.

上面这个字符串就是域名,也就是我们熟知百度的域名,眼尖的小伙伴可能发现最后怎么多了一点,没错这个点就是最高层的管理者也就是,当然我们默认情况下都是隐藏的,我们拆分来看下:

  • com:这个顶级域名,是有一个家域名发行商管理,当然类似的还有io, cn, hk 等等;
  • baidu:在顶级域名下面,我们称之为一级域名,这个域名都是用户或者公司进行购买,需要付出费用;
  • www:接着就是www,我们称之为二级域名,这个完全是由一级域名所有者进行管理的。

看到这里有的小伙伴有些懵,那么简单来说下规则:

.(根) --> com(顶级域名) --> baidu(一级域名) --> www(二级域名)

一般情况下就是这样的一个分层构建了我们看到的DNS服务。

2、DNS应用场景

场景:就是地址簿....

场景一:域名管理

这也是最常见的情况,在购买一级域名后你可以进行配置你的域名记录,域名指向你的实际地址我们称之为A记录,相关的常用记录还有:

  • A记录,一般作用于域名-->IP的直接解析也是企业最常用的;
  • CNAME,就是别名解析,一般多用于CDN的场景下,相当于域名和主机之间增加了一个桥梁;
  • MX,邮件解析记录,这个笔者接触也不多;
  • NS,指定你的DNS服务器地址,刚才我们说过了域名是自上而下的管理,你需要一个老大哥来罩着你,这个DNS就是你大哥地址,默认情况下购买域名后默认给你配置;
  • TXT,这个记录一般多用于域名验证,判断域名是否有管理权限。

好用的DNS,如万网或者DNSPOD 会有 A记录负载均衡以及智能DNS的功能。

  • A记录负载均衡,当你的入口服务器一台机器扛不住的情况下,这个是非常赞的功能;
  • 智能DNS,可以根据用户来源的DNS位置进行解析不同的记录,这样就可以实现用户分流了(从源头控制很舒心,多用于跨境服务以及CDN)。

场景二:企业内部DNS

上周还在吐槽,公司内部测试环境服务器通过IP+端口来划分,记忆混乱整个人都难受,平白无故都发也稀少了,这样我们就可以通过构建一台内部DNS解决这个问题了

还有一个非常重要的事情就是,集群内部环境,当我们使用外部服务器的DNS,如果他们DNS抽风或者网络的种种原因我们最好在自己机房做一个DNS服务,来保证内部服务的通畅。

笔者认识的小伙伴就因为某DNS服务商除了问题,整个内部服务有一多半出现非常卡顿的问题。

3、DNS踩过的坑

Q: 我配置的DNS为啥没有效果呢?

A: DNS默认生效是有周期行知的默认都在10分钟以内,如果更改的级别越高比如你修改了NS服务则需要24小时甚至更长。(所以笔者建议,在切割DNS时特别注意这一点,以免造成服务不可访问)

Q: 为什么我明明配置的DNS解析记录,然而还是搜寻不到呢?

A: 鉴于国内行情DNS和运营商的的缓存刷新还不一致,你可以指定你服务器配置的DNS Server测试一下

Q: 智能DNS 为什么解析的服务器不是对应地区的呢?

A: 这个智能DNS能够获取到的是用户PC上配置的DNS地址,所以你懂的(所以测试的小伙伴需要注意了)

Q: DNS 负载均衡怎么不是1V1?

A: DNS服务商也想啊,但是实力不允许啊,能够做到相对轮训的,可靠地不用担心(只是负载均衡,没有健康检查,Bro 特别注意)

Q: 我配置了CDN 但是经常出现404,尤其是配置HTTPS的情况下?

A: 这个呢是CDN服务器宕机或者智能调度到其他Server,但是运营商的缓存没有刷新;建议联系你的CDN的销售经理帮助你换到更加稳定服务器哦。

其实最大的坑,莫过于运营商和DNS服务商的缓存刷新了

4、DNS两种解析机制

鉴于网上有比较好的文章了,我就不水了,传送门:https://blog.51cto.com/13570193/2105393

换一种视角看DNS(采坑篇)的更多相关文章

  1. Html.fromHtml采坑篇

    在显示复杂的文本样式时,通常采用SpannableString和Html.formHtml来解决需求. 在使用html过程中,通常会出现以下问题: 1.提示Html.formHtml方法过时 解决 使 ...

  2. 从源码看Spring Security之采坑笔记(Spring Boot篇)

    一:唠嗑 鼓捣了两天的Spring Security,踩了不少坑.如果你在学Spring Security,恰好又是使用的Spring Boot,那么给我点个赞吧!这篇博客将会让你了解Spring S ...

  3. 换种眼光看Spring之bean是怎么诞生的(一)

    Java的世界里处处存在了对象,有时候换一种眼光往往会给自己带来与之前大不一样的理解. 一个对象的出现离不开字节码,拿classforname来讲,classforname("...&quo ...

  4. Mybatis系列全解(七):全息视角看Dao层两种实现方式之传统方式与代理方式

    封面:洛小汐 作者:潘潘 一直以来 他们都说为了生活 便追求所谓成功 顶级薪水.名牌包包 还有学区房 · 不过 总有人丢了生活 仍一无所获 · 我比较随遇而安 有些事懒得明白 平日里问心无愧 感兴趣的 ...

  5. alert大法看执行流程(一次采坑)

    页面的dom元素加载完了,给元素一次性添加事件. 收获:事件都是一次性给添加好的,不是点击一次,................................................... ...

  6. Redis集群搭建采坑总结

    背景 先澄清一下,整个过程问题都不是我解决的,我在里面就是起了个打酱油的角色.因为实际上我负责这个项目,整个过程也比较清楚.之前也跟具体负责的同事说过,等过段时间带他做做项目复盘.结果一直忙,之前做的 ...

  7. Charles 抓包工具安装和采坑记录

    Charles 抓包工具安装和采坑记录 网络抓包是解决网络问题的第一步,也是网络分析的基础.网络出现问题,第一步肯定是通过抓包工具进行路径分析,看哪一步出现异常.做网络爬虫,第一步就是通过抓包工具对目 ...

  8. PS切图采坑

    博客记录我的各种采坑,有的坑很水,比如下面这个 谨记录自己的坑,以后作为入门笑料. 拿到设计师的psd设计图,理清事件逻辑,接下来就要切图啦.结果PS老是crash!检查了PS版本,也不低啊2017. ...

  9. axios采坑之路

    POST请求设置Content-Type 由于后端采用的是form表单形式上送参数,需要设置Content-Type axios设置如下 const _axios = axios.create(con ...

随机推荐

  1. Android——几种数据存储应用浅谈

    (1)android中的数据存储主要有五种方式: 第一种.sharedPreferences存储数据, 适用范围:保存少量的数据,且这些数据的格式非常简单:字符串型.基本类型的值.比如应用程序的各种配 ...

  2. python 虾米停服了...用python爬取虾米最近播放的1000首歌

    1. 虾米关服 在这里插入图片描述 用了5年多的音乐软件就这么说关就关了,确实让人心里不好受 ,虽然再去一个新的app里,让它们的算法熟悉你的喜好也不是很困难,可我还是习惯虾米的界面.虾米现在可以支持 ...

  3. 初识分布式图数据库 Nebula Graph 2.0 Query Engine

    摘要:本文主要介绍 Query 层的整体结构,并通过一条 nGQL 语句来介绍其通过 Query 层的四个主要模块的流程. 一.概述 分布式图数据库 Nebula Graph 2.0 版本相比 1.0 ...

  4. 园子的品牌专区上新:NoSQL 数据库佼佼者 Aerospike

    品牌专区是园子去年推出的新楼盘,为优秀的科技企业在园子里提供一个地方,展示自己的品牌,分享自己的技术内容. 最近我们和国外领先的 NoSQL 数据库厂商 Aerospike 达成了合作,入驻了园子的品 ...

  5. PPT 转 word

    可以wps  直接转 打开wps   在页面里直接点击右键  可以导出wps

  6. Ossec 安装并配置邮件通知

    Ossec 安装并配置邮件通知 目录 Ossec 安装并配置邮件通知 1. 介绍 2. 软硬件环境 3. 安装步骤 3.1 Server 3.2 Agent 3.3 配置邮件通知 4. 参考资料 1. ...

  7. 【Linux】ntp的一些坑。你肯定遇到过

    ntpdate提示 19 Jan 10:33:11 ntpdate[29616]: no server suitable for synchronization found 这种问题从下面几个点开始验 ...

  8. 【Linux】Linux系统dev/目录下的tty

    终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备.tty是Teletype的缩写.Teletype是最早出现的一种终端设备,很象电传打字机(或者说就是),是由Teletyp ...

  9. 前端基础功能,原生js实现轮播图实例教程

    轮播图是前端最基本.最常见的功能,不论web端还是移动端,大平台还是小网站,大多在首页都会放一个轮播图效果.本教程讲解怎么实现一个简单的轮播图效果.学习本教程之前,读者需要具备html和css技能,同 ...

  10. Ubuntu20.04 安装火狐开发者版本(水狐)步骤

    1. 从Mozilla Firefox Developer Edition webpage下载. 2. 将下载的"tar.bz2"文件解压到指定目录, 例如/opt/firefox ...