DNS,全称Domain Name System,即域名系统,搞清楚,它不是DNF地下城与勇士。

DNS是怎么来的,我们知道要访问一个服务器的资源可以通过IP的形式访问,但IP地址比较难记,也不方便读,所以有了DNS的存在,DNS通过解析域名并与实际的远程服务器主机建立连接。

即我们访问www.baidu.com的时候,通过DNS服务器解析出实际的IP地址去连接并返回给客户端。

解析过程

windows和linux可以通过命令nslookup查询域名解析结果,如下图所示。

linux中还可以通过dig命令查看更详细的解析过程,如图所示。

本地映射

我们可以在操作系统中修改host自定义配置域名与IP的关系,即我们可以让任何一个域名访问任何一个IP地址。

windows: c:\windows\System32\drivers\etc\hosts

linux: /etc/hosts

比如我们经常把localhost映射到127.0.0.1,可以把baidu.com映射到xx.xx.xx.xx。如果我们本地的映射关系被不得而知的修改了会导致严重的安全问题,如果把taobao.com映射到黑客或者攻击者的IP,那我们的信息及财产安全就得不到保障。早期的windows中的hosts文件可以随意修改,win7之后这个文件设置为只读的,避免恶意修改。当然我们电脑装有杀毒防护类软件的话,也可以防范这个文件被恶意修改。

域名解析方式

最后讲下几种域名的解析方式,一般不是域名管理者不会用到。

A记录

IP地址解析,就是域名与IP地址绑定,一个域名只能绑定一个IP地址,但一个IP地址可以被多个域名绑定。

AAAA记录

即IPV6地址解析。

CNAME记录

别名解析,比如我们可以将wx.qq.com解析到www.weixin.com,weixin.qq.com也可以解析到www.weixin.com,www.weixin.com就是A记录绑定的实际的IP地址。一般大型网站都使用这种解析方式,这样做的好处就是不管www.weixin.com的ip地址怎么更换解析,都不会影响wx.qq.com和weixin.qq.com的解析。

MX记录

Mail Exchange解析,邮件服务器地址,即xx@baidu.com的路由会发到MX记录的绑定记录服务器。

NS记录

指定解析DNS服务器地址,即这个域名由哪个IP地址的DNS服务器解析。

TXT记录

为域名设置说明,用命令解析的时候就能看到这个域名的说明。

在设置域名解析的时候还有一个TTL值,即DNS服务器缓存域名解析结果的时间,超过这个时间才会重新解析,否则返回已经解析的缓存的解析结果,这个一般设置为1小时,即3600秒。

我们来看看阿里云域名添加解析的截图

转自

架构师必须搞懂DNS,一篇文章 就够了 - 今日头条(www.toutiao.com)
http://www.toutiao.com/i6437647086488912385/

架构师必须搞懂DNS【转】的更多相关文章

  1. WEB架构师成长之路-架构师都要懂哪些知识 转

    Web架构师究竟都要学些什么?具备哪些能力呢?先网上查查架构师的大概的定义,参见架构师修炼之道这篇文章,写的还不错,再查查公司招聘Web架构师的要求. 总结起来大概有下面几点技能要求: 一. 架构师有 ...

  2. WEB架构师成长之路之三-架构师都要懂哪些知识

    Web架构师究竟都要学些什么?具备哪些能力呢?先网上查查架构师的大概的定义,参见架构师修炼之道这篇文章,写的还不错,再查查公司招聘Web架构师的要求. 总结起来大概有下面几点技能要求: 一. 架构师有 ...

  3. 架构师都该懂的 CAP 定理

    面对可能出现的网络延迟,不可预估的请求流量等情况,设计一个分布式系统,我们通常围绕系统高可用,数据一致性的目标去规划和实现,想要完全实现这个目标,却并非易事.由此,分布式系统领域诞生了一个基本定理,即 ...

  4. 架构师素养及从小菜进阶架构(CTO)的书籍【转】

    CTO要了解无线技术/搜索/大数据/数据库等. -- 通常定义架构有几个层次,这包括业务架构.产品架构.应用架构和技术架构: 1.业务架构:描述一个企业围绕一个行业做了哪些业务,例如支付行业的收单.退 ...

  5. 向架构师进军-->可重用架构资源

    如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 软件架构有三个主要来源:拿取.方法以及直觉.拿取也就是可重用资源.对于一个标准的系统 ...

  6. Java架构师学习路线

    Java架构师,首先要是一个高级java攻城狮,熟练使用各种框架,并知道它们实现的原理.jvm虚拟机原理.调优,懂得jvm能让你写出性能更好的代码;池技术,什么对象池,连接池,线程池--   Java ...

  7. 一位资深Java架构师的晋级心得

    架构师是什么? 是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的团队领导型人物.一个架构师得需要足够的想像力,能把各种目标需求进行不同维度的扩展,为目标客户提供更为全面的需求清 ...

  8. 关于JAVA架构师

    在我们行业内,我们大致把程序员分为四级 1.初级Java程序员的重心在编写代码.运用框架: 2.中级Java程序员重心在编写代码和框架: 3.高级Java程序员技术攻关.性能调优: 4.架构师 解决业 ...

  9. JAVA架构师面试题 一

    基础题目 Java线程的状态 进程和线程的区别,进程间如何通讯,线程间如何通讯 HashMap的数据结构是什么?如何实现的.和HashTable,ConcurrentHashMap的区别 Cookie ...

随机推荐

  1. LOJ2430:[POI2014]沙拉餐厅Salad Bar——题解

    https://loj.ac/problem/2430 是的我BZOJ又没卡过……懒得卡了. 参考:https://blog.csdn.net/zqh_wz/article/details/52887 ...

  2. 【loj2461】【2018集训队互测Day 1】完美的队列

    #2461. 「2018 集训队互测 Day 1」完美的队列 传送门: https://loj.ac/problem/2461 题解: 直接做可能一次操作加入队列同时会弹出很多数字,无法维护:一个操作 ...

  3. git使用笔记(十三)ls-files

    By francis_hao    Mar 18,2018   git ls-fles 显示index和工作区的文件的信息. 概要 git ls-files [-z] [-t] [-v]        ...

  4. C++模式设计-多线程下的单例模式

    1 教科书里的单例模式 我们都很清楚一个简单的单例模式该怎样去实现:构造函数声明为private或protect防止被外部函数实例化,内部保存一个private static的类指针保存唯一的实例,实 ...

  5. nginx日志增加cookie信息

    一.获取全部cookie信息 这个比较方便,直接在nginx.conf文件中添加$http_cookie log_format main '[$time_local] - $remote_addr:$ ...

  6. Jenkins+SVN+Maven发布项目

    一.安装jenkins插件 登入Jenkis后,安装几个插件: Maven Integration plugin # 没有这个插件,不能创建maven项目 Subversion Plug-in Pub ...

  7. linux shell学习二

    参考:http://www.cnblogs.com/waitig/p/5531463.html Shell注释 Shell中的注释以“#”号开头,所有以“#”号开头的代码都会被解释器所忽略. 比如下面 ...

  8. 利用Zynq Soc创建一个嵌入式工程

    英文题目:Using the Zynq SoC Processing System,参考自ADI的ug1165文档. 利用Zynq Soc创建一个嵌入式工程,该工程总体上包括五个步骤: 步骤一.新建空 ...

  9. LeetCode-Insertion Sort List[AC源码]

    package com.lw.leet5; /** * @ClassName:Solution * @Description: * Insertion Sort List * Sort a linke ...

  10. 数学:FFT

    在信息学竞赛中FFT只有一个用处那就是加速多项式的乘法 多项式乘法原本的时间复杂度是O(n^2)的,然后经过FFT之后可以优化为O(nlogn) FFT就是将系数表示法转化成点值表示法相乘,再由点值表 ...