DNS服务及相关概念
DNS:域名服务器:Domain Name Server
IANA:互联网号码管理局:Internet Assigned Numbers Authority
ICANN:互联网名称与数字地址分配机构:Internet
Corporation for Assigned Names and Numbers
FQDN:完全合格域名/全称域名:Fully
Qualified Domain Name
TLD:顶级域:Top Level Domain
包含:组织域:.com,.org,.net,.cc
国家域:.cn, .tw,.hk,.iq,.ir,.jp
反向域:反向:IP-->FQDN,(正向:FQDN-->IP)
NS记录:名称服务器记录:Name
Server Record
A记录:地址记录,用来指定主机名(或域名)对应的IP地址记录:Address
Record
TTL值:生存时间值,Time
To Live
Stub
Resolver:存根解析器
Recursive
Resolver:递归解析器,也能迭代
什么是DNS,DNS的作用是什么,hosts文件是什么,它用来干嘛?
在计算机刚出现的时候,个人电脑还没有出现的时候,在美国的几个有名的大学和军队里面的计算机相互之间需要通信,而人脑又记住不数字的ip地址,相对而言,人脑能够记住更多的字符串,所以就出现了用域名代替ip地址的办法,每个域名都代表一个ip地址,那么这些域名和ip地址的对应关系放在哪里呢?hosts文件出现了,它里面存放的就是一些能够把ip地址和域名对应起来的文本,所以说早期的DNS就是通过hosts文件来实现的,现在也可以通过hosts文件来实现所谓的“翻”墙,比方说laod博客,这个博客上面会不定时更新一些hosts文件来把访问的域名和对应的ip对应起来,实现访问国外站点。那有了hosts了,还要DNS做什么呢?想没想过一个问题,早期的计算机就那么几台,如果新加了个计算机,可以手动把对应的主机ip添加进来,但是,在现在来看,你还能手动添加每一个站点吗?所以说DNS的作用就是解决自动查找网络上的主机的作用的。那么问题又来了:DNS怎么实现动态更新网络上的主机信息的呢?这时候就需要了解DNS的工作方式了,我们每次上网的时候,都需要配置一个DNS地址,这个地址是用来干什么的呢?当我们访问百度的地址:www.baidu.com的时候,计算机会先查询本地的hosts文件看是否能够找到对应的ip信息,如果有的话,就把请求发送到对应的主机上,如果没有,请求会发送到DNS上,DNS实际就是充当的一个动态的hosts文件,当主机过多的时候,一个DNS处理不过来了,因为每个请求都需要查询,查询是需要消耗计算机的资源的,这时候,就需要搭建DNS集群来实现对应的功能了。问题又来了,所有的站点信息都放在同一个地方,那查询起来也太不方便了,而且为了保证安全,怎么可以放在一个地方呢,试想一下:把所有的网站信息都放在美国,那么如果美国把提供解析的服务器给关了,那么世界的网络不就瘫了?那该怎么班呢?这时候就需要把DNS做成分布式的,大概的样子就和Linux文件系统一样,做成树状的,分级管理,那么对应的域名也就有了一级域名,二级域名,三级域名等等,查询的时候先查询顶级域名,然后查询二级域名,逐级查询。按道理每个国家维护一台自己的DNS服务器,这样就可以保证安全了,而且分布式的方式部署DNS也可以保证一个节点被破坏,其他节点可以正常工作,保证了网络的可靠性。实际上并不是每个国家都有自己的根服务器的,根服务器多了也不好,难于管理,有可能发生DNS污染,有些国家只有镜像。这时候google一下DNS,DNS根服务器,ICANN和IANA是最好不过的了。
DNS服务器:。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。开始时,域名的字符仅限于ASCII字符的一个子集。2008年,ICANN通过一项决议,允许使用其它语言作为互联网顶级域名的字符。使用基于Punycode码的IDNA系统,可以将Unicode字符串映射为有效的DNS字符集。因此,诸如“x.中国”、“x.台湾”等这样的域名可以在地址栏直接输入,而不需要安装插件。但是,由于英语的广泛使用,使用其他语言字符作为域名会产生多种问题,例如难以输入,难以在国际推广等。
DNS根服务器:是互联网域名解析系统(DNS)中最高级别的域名服务器,负责返回顶级域的权威域名服务器地址。它们是互联网基础设施中的重要部分,因为所有域名解析操作均离不开它们。由于DNS和某些协议(未分片的用户数据报协议(UDP)数据包在IPv4内的最大有效大小为512字节)的共同限制,根域名服务器地址的数量被限制为13个。幸运的是,采用任播技术架设镜像服务器可解决该问题,并使得实际运行的根域名服务器数量大大增加。截至2017年11月,全球共有800台根域名服务器在运行。
IANA:互联网号码分配局(英语:Internet
Assigned Numbers Authority,缩写IANA),是一家互联网地址指派机构,管理国际互联网中使用的IP地址、域名和许多其它参数的机构。IP地址、自治系统成员以及许多顶级和二级域名分配的日常职责由国际互联网注册中心(IR)和地区注册中心承担。IANA是由ICANN管理的。
ICANN:是一个非营利性组织,负责协调维护和相关的命名空间的几个数据库的程序,互联网,保证了网络的稳定和安全运行。互联网名称与数字地址分配机构(ICANN)根据互联网号码分配机构(ICANN)执行中央互联网地址池和DNS根域注册机构的实际技术维护工作(IANA)职能合同。ICANN与美国商务部国家电信和信息管理局(NTIA)之间的IANA管理职能合同于2016年10月1日终止,正式向全球多利益相关方社群过渡。其大部分工作涉及互联网的全球域名系统(DNS),包括DNS系统国际化的政策制定,引入新的通用顶级域名(TLD)以及运行根名称服务器。ICANN管理的号码设施包括IPv4和IPv6的互联网协议地址空间,以及将地址块分配给区域互联网注册管理机构。ICANN还维护互联网协议标识符的注册管理机构。联网名称与数字地址分配机构(ICANN)的主要运营原则被描述为帮助维护互联网的运营稳定性 促进竞争; 实现全球互联网社群的广泛代表性; 并通过自下而上,基于共识的流程制定适合其使命的政策。ICANN成立于1998年9月18日创建,并纳入1998年9月30日,在美国各州的加利福尼亚州。总部设在洛杉矶的Playa
Vista街区。
根节点服务器:
{a,m} root-server_net
dns的结构:主、从结构
主DNS服务器:数据修改
辅助DNS服务器:请求数据同步
serial number:辅助DNS的序列号(版本号),如果版本号比主的小,就发出同步请求
refresh:刷新周期,定义每隔多少时间去查看主DNS的版本号
retry:重试时间,应该小于refresh的时间
expire:过期时间
nagative answer TTL:否定答案的缓存时长,比如我的网站不在线,你就不用一直发送请求过来了
缓存DNS服务器:用来缓存本地请求的DNS记录
转发器:不缓存请求过的记录,只负责帮忙把请求转发到其他DNS
在DNS的数据库中,每一个条目,都被称为一个资源记录(Resource Record)
资源记录类型:
SOA:Start Of Authority:起始授权记录
NS:Name Server:DOMAIN --> FQDN,正向和反向都能定义
MX:Mail eXchange:ZONE NAME --> FQDN ,只能定义在正向区域文件中,不能定义在反向区域文件中
A:address:从FQDN --> IPv4(最常用的),只能定义在正向区域文件中,不能定义在反向区域文件中
AAAA:FQDN --> IPv6
PTR:pointer:IP --> FQDN,只能定义在反向区域文件中,不能定义在正向区域文件中
CNAME:FQDN --> FQDN
TXT
CHAOS
SRV
资源记录的格式:
NAME(名称) TTL(TTL值) IN(Internet) RRT(资源记录类型) VALUE(值)
www.hengshare.top. IN A 1.1.1.1 (ns记录)
1.1.1.1 IN PTR www.hengshare.top. (ptr记录)
hengshare.top. 600 IN NS ns.hengshare.top. (ns记录,成对出现)
ns.hengshare.top. 600 IN A 1.1.1.2
www1.hengshare.top. IN CNAME www.hengshare.top. (CNAME记录)
ZONE NAME TTL IN MX pri(优先级,1最高) VALUE (MX记录)
hengshare.com. 600 IN MX 10 mail.hengshare.top
mail.hengshare.top. 600 IN A 1.1.1.3
ZONE NAME TTL IN SOA FQDN ( (SOA记录)
serial number
refresh
retry
expire
na ttl )
时间单位:M(分钟)、H(小时)、D(天)、W(周),默认单位是秒
邮箱格式:admin@gmail.com 写为:admin.gmail.com
hengshare.top. 600 IN SOA y_jiaheng.foxmail.com. (
2013040101
1H
5M
1W
1D )
域:Domain(逻辑概念)
区域:Zone (物理概念)
例子:
我在 .top下买了个域名:hengshare.top.,所以在.top下有我的资源记录:
hengshare.top. IN NS ns.hengshare.top.
ns.hengshare.top. IN A 192.168.0.10
所以,我现在有域名:hengshare.top. 还有我的主机域:192.168.0.0/24,我的规划是这样:
www 192.168.0.1
mail 192.168.0.2 , MX
接下来我需要建立两个区域文件:
正向区域文件:
hengshare.top. IN SOA
如果在配置文件中定义了,可以简写为:
@ IN SOA
www.hengshare.top. IN A 192.168.0.1
可以简写为:
www IN A 192.192.0.1
反向区域文件:
0.168.192.in-addr.arpa. IN SOA
1.0.168.192.in-addr.arpa. IN PTR www.hengshare.top.
可以简写为:
1 IN PTR www.hengshare.top.
区域传送:
完全区域传送:axfr
增量区域传送:ixfr
区域类型:
主区域:master
从区域:slave
提示区域:hint
转发区域:forward
DNS服务及相关概念的更多相关文章
- redhat enterprixe 5.0 DNS 服务配置与管理
一.了解DNS相关概念 DNS是一个分布式数据库,在本地负责控制整个分布式数据库的部分段,每一段中的数据通过客户机/服务器模式在整个网络上存取.通过采用复制技术和缓存技术使得整个数据库稳定可靠的同时, ...
- NTP服务和DNS服务(week3_day3)--技术流ken
NTP时间服务器 作用:ntp主要是用于对计算机的时间同步管理操作. 时间是对服务器来说是很重要的,一般很多网站都需要读取服务器时间来记录相关信息,如果时间不准,则可能造成很大的影响. 部署安装NTP ...
- 末学者笔记--NTP服务和DNS服务
NTP时间服务器 一.概念: 作用:ntp主要是用于对计算机的时间同步管理操作. 时间是对服务器来说是很重要的,一般很多网站都需要读取服务器时间来记录相关信息,如果时间不准,则可能造成很大的影响. 二 ...
- NTP服务和DNS服务
1.NTP时间服务器 作用:NTP主要用于对计算机的时间同步管理操作 1.1 NTP部署 服务端:192.168.16.6 客户端:192.168.16.7 [root@localhost ~]# ...
- Linux服务之DNS服务篇
一.DNS服务概述 DNS(Domain Name System)域名系统,在TCP/IP 网络中有非常重要的地位,能够提供域名与IP地址的解析服务. DNS 是一个分布式数据库,命名系统采用层次的逻 ...
- Liunx下配置DNS服务
当Ping 主机名时可以映射出该主机的IP地址,反之亦然.配置并指定DNS服务器可以快速部署集群,不需要每台主机都去修改HOSTS文件即可实现IP与主机名的相互解析.而在Linux下的DNS是用bin ...
- 如何搭建DNS服务
继NTP时间服务器后,继续搭建DNS服务,鉴于昨晚撰写时间超过预期,这次改变策略,先把自己需要用到的部分写出来(主要是基于RAC的搭建,只涉及正向和反向DNS解析),后面再添加必要的说明和阐述. 试验 ...
- k8s DNS 服务发现的一个坑
按照官当文档,以及大家的实践进行k8s dns 服务发现搭建还是比较简单的,但是会有一个因为系统默认dns 配置造成的一个问题 1. linux 默认dns 配置在 /etc/resolv.conf ...
- 打造私有的DNS 服务
在企业内部一般都会有自己的DNS服务,主要为了企业方便管理,例如访问一些内部系统,控制一些网站不让访问,今天我们就说说如何打造私有的DNS服务 系统基础配置 Ubuntu14.04 内存:354M ...
随机推荐
- id取模分表
场景 1 假设按用户id分2个库 每个库分10张表. 分表策略 1.用户id%2 确定库 用户id%3确定表. 2.(用户id%(2*10))/ 10 取整确定库,(用户id%(2*10)%10确 ...
- 8种常被忽视的SQL错误用法
作者:一杯甜酒 原文:https://blog.csdn.net/u012562943/article/details/71403500 sql语句的执行顺序: FROM <left_table ...
- Xshell连接虚拟机突然被拒,提示再次输入密码。。。
sudo vim /etc/ssh/sshd_config 将 # Authentication: LoginGraceTime 120 PermitRootLogin prohibit-passwo ...
- AngularJS学习笔记(3)——通过Ajax获取JSON数据
通过Ajax获取JSON数据 以我之前写的与用户交互的动态清单列表为例,使用JSON前todo.html代码如下: <!DOCTYPE html> <html ng-app=&quo ...
- JS判断不能为空实例代码
JS判断不能为空实例代码.分享在此. 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " ...
- 从LinqPad入门Linq
为什么要学习Linq? 在我们日常开发中,经常需要从数据库中执行各式各样的查询来获取需要的数据.但是如果需要对查询获得的数据进行二次筛选呢?linq就提供了对于可枚举类型(实现IEnumerable接 ...
- _MainTex_TexelSize what's the meaning?
uniform float4 _MainTex_TexelSize where is the value of the float4 _MainTexelSize from? It's set by ...
- 网页截图API接口,一键自动生成网页截图
背景 最近在开发一个小程序,其中有一个帮助模块,内容为帮助文章列表,文章内容为网站后台编辑的富文本格式.鉴于小程序的特殊性,其对html格式的富文本支持并不友好. 刚开始有人开发了wxparse插件, ...
- svn版本分支及冲突解决笔记
转载:http://blog.csdn.net/xuguiyi100/article/details/51966557 分支合并主干示例 1.主干工程右键选择merge合并下一步 2.选中merge ...
- dedecms实例化对象
1.建表 2.创建实体类 4.tc文件加载该实体类 5.用的时候,引入tc.php文件,并实例化