DNS即为Domain Name System的缩写形式,就是所谓的域名系统,它是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。

如果想访问某个网站(比如www.example.com),你的计算机需要知道该服务器在互联网的何处。也就是说,它必须知道要与哪个IP地址对话。

计算机找到IP地址的方式就是域名系统(Domain Name System,即DNS)。

    

在注册域名时,你可以设置许多类型的DNS记录。

每个记录都包含一个Type(类型)、一个Host(主机)和一个Value(值)。

  • “Type”是一些预定义的值。

  • “Host”代表根(@)或子域名(www)。

  • “Value”是IP或网址,或其他值。

    

A记录负责将子域名映射成IPv4地址。

最常使用A记录的地方就是根(@),它可以告诉浏览器example.com的位置。AAAA记录的作用是一样的,只不过用于IPv6。

    

CNAME负责将子域名映射成另一个域名。

这可以是同一站点上的另一个子域名(例如将www转发到根),也可以是应用所在的其他域名(例如heroku)。

    

但CNAME有个问题!

一旦为子域(主机)定义CNAME记录后,就无法为该子域名定义其他记录。

为此,你无法在根级别使用CNAME(因为根上还需要定义其他类型的记录)。

    

为了解决这个问题,我们可以使用ALIAS(有时是ANAME)。

ALIAS的作用与CNAME相同,但它是非标准的DNS类型。

因此,你可以使用ALIAS将根域名(example.com)转发到应用的服务器(example.herokudns.com)。

    

如此一来,你就可以将将其他记录放在根上,例如:

TXT记录,可以为任何读取DNS记录的计算机提供额外的信息。

TXT记录常常用于证明你拥有该域名,因为只有域名的所有者才能设置DNS记录。

    

还有:

MX记录(电子邮件eXchange),可用于指定另一台处理电子邮件的服务器(例如Google)。

MX记录是唯一的,如果你需要设置多个服务器,那么就必须给每个服务器设置“优先级”。

    

还有许多其他的记录类型,但上述这些记录类型是你最经常设置的类型。

你还可以指定每条记录的存活时间(Time To Live,TTL),它可以告诉DNS服务器你的DNS值需要保存多久。

    

我们之所以设置存活时间,是因为新的域名记录需要一定的时间才能“传播”。

DNS服务器、你的ISP甚至你的计算机都会缓存DNS记录,提供“旧”值,直到存活时间到期。

    

希望在下一次设置DNS时,你能够扫清心中的疑惑!感谢您的阅读!

原文:https://dev.to/chrisachard/dns-record-crash-course-for-web-developers-35hn

DNS 解析的更多相关文章

  1. DNS解析过程详解

    先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址www.baidu.com在配置当中应该是www.baidu.com.(最后有一点),一般我们在浏览器里输入时会省略后面的点 ...

  2. C#实现DNS解析服务和智能DNS服务

    C#实现DNS解析服务有一个开源项目ARSoft.Tools.Net, ARSoft.Tools.Net是一个非常强大的开源DNS控件库,包含.Net SPF validation, SenderID ...

  3. 解决域名DNS解析的故障

    在实际应用过程中可能会遇到DNS解析错误的问题,就是说当我们访问一个域名时无法完成将其解析到IP地址的工作,而直接输入网站IP却可以正常访问,这就是因为DNS解析出现故障造成的.这个现象发生的机率比较 ...

  4. LINUX DNS解析的3种修改方法~

    1.HOST 本地DNS解析 vi /etc/hosts 添加规则 例如: 223.231.234.33 www.baidu.com 2.网卡配置文件DNS服务地址  vi /etc/sysconfi ...

  5. DNS解析过程和域名收敛、域名发散、SPDY应用

    前段时间项目要做域名收敛,糊里糊涂的完成了,好多原理不清晰,现在整理搜集下知识点. 域名收敛的目的是什么?简单来说就是域名解析慢.那为什么解析慢?且听下文慢慢道来. 什么是DNS? DNS( Doma ...

  6. 通过统计用户DNS解析记录,实现监控用户上网行为

    上次通过扫描抓包分析TTL的方式检测公司网络开放的端口,发现没有开放53端口(DNS),也就是在公司内部的主机只能用服务器自动分配的DNS,并且发现这是台内部服务器.今天发现bing上不去,检测后发现 ...

  7. DNS解析全过程及原理

    DNS解析原理及过程. 当用户访问我们网站一个网页时,他需要经过以下步骤: 1)找到这个网页的存放服务器: 2)服务器将用户的请求信息接入: 3)服务器通过文件路径(URL)查找用户请求网页: 4)用 ...

  8. 使用dig查询dns解析

    原文地址:使用dig查询dns解析 作者:chenwenming 一般来说linux下查询域名解析有两种选择,nslookup或者dig,而在使用上我觉得dig更加方便顺手. 如果是在debian下的 ...

  9. Dnsmasq安装与配置-搭建本地DNS服务器 更干净更快无广告DNS解析

    默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...

  10. DNS解析过程

    参考: http://www.maixj.net/ict/dns-chaxun-9208 http://blog.it985.com/8389.html DNS(Domain Name System) ...

随机推荐

  1. python gtk 环境

    为Python添加GTK+库:pygtk(windows下安装pygtk) 一.下载需要的文件 昨天晚上就是所需的文件没有找全,我还以为只需要一个pygtk就够了. 1.下载pygtk需要的文件 到p ...

  2. [String]两个右补空格使字符串达到固定长度的函数 来自网上 请君自取

    代码: package fixsizestring; public class TestClass { public static void main(String[] args) { for(int ...

  3. 单例模式:Java单例模式的几种写法及它们的优缺点

    总结下Java单例模式的几种写法: 1. 饿汉式 public class Singleton { private static Singleton instance = new Singleton( ...

  4. 007-guava 缓存

    一.概述 Guava Cache与ConcurrentMap很相似,但也不完全一样.最基本的区别是ConcurrentMap会一直保存所有添加的元素,直到显式地移除.相对地,Guava Cache为了 ...

  5. 算法习题---5.8Unix ls命令(Uva400)

    一:题目 输入正整数n以及n个文件名,将这n个文件名按照ASCII优先升序排列,按列优先方式左对齐输出. 注意:文件名最长的为M,那么最右列字符串长度为M,其他列的长度为M+2 注意:一列最多允许出现 ...

  6. wave数据集的回归曲线

    wave数据集的回归曲线 import matplotlib.pyplot as pltimport mglearnfrom scipy import sparseimport numpy as np ...

  7. python学习:python打包成exe

    1) 安装pyinstaller pip install pyinstaller 目前已经支持 python 3.7 版本 2) 打开cmd窗口,进入到要打包的python文件所在目录, pyinst ...

  8. jqweui Popup 使用说明

    使用步骤说明: 今天遇到一个问题,无论怎么点击一个图标都不会弹出对应的遮罩层,但是把示列代码拷贝过来又可以正常显示:结果是由于在复制的时候把 # 号弄掉了 错误操作展示: <a href=&qu ...

  9. vue-cli3项目中全局引入less sass文件 以及使用本地图片在不同地方规则

    第一种直接在main.js中引入,需要声明loader demo: import '!style-loader!css-loader!less-loader!./assets/css/common.l ...

  10. 仔细看参数--NGINX之tcp_nodelay

    一.知识准备 ● 在nginx优化中有个经常需要设置的参数,tcp_nodelay ● 该参数最核心的功能,就是把小包组成成大包,提高带宽利用率也就是著名的nagle算法 ● tcp协议中,有一个现象 ...