Linux:Day18(上) dns服务基础进阶
DNS:Domain Name Service,协议(C/S,53/udp,53/tcp);应用层协议。
BIND:Bekerley Internat Name Domain,ISC(www.isc.org)
Top Level Domain:tld
com,edu,mil,gov,net,org,int
三类:组织域、国家域、反向域
DNS查询类型:
递归查询
迭代查询
名称服务器:域内负责解析本域内的名称的主机;
根服务器:13组服务器
解析类型:
Name --> IP
IP --> Name
注意:正反向解析是两个不同的名称空间,是两棵不同的解析树。
DNS服务器类型:
主DNS服务器
辅助DNS服务器
缓存DNS服务器
转发器
主DNS服务器:维护所负责解析的域内解析库服务器;解析库由管理员维护;
从DNS服务器:从主DNS服务器或其它的从DNS服务器那里“复制”(区域传递)一份解析库;
序列号:解析库的版本号;前提:主服务器解析库内容发生变化,其序列号递增;
刷新时间:从服务器从主服务器请求同步解析库的时间间隔;
重试时长:从服务器从主服务器请求同步解析失败时,再次尝试的时间间隔;
过期时长:从服务器始终联系不到主服务器时,多久之后放弃从服务器角色,停止提供服务;
”通知“机制:
区域传送:
全量传送:传递整个解析库。
增量传送:传递解析库变化的那部分内容。
DNS:
Domain:
正向:FQDN --> IP
反向:IP --> FQDN
正向反向各需要一个解析库来分别负责本地域名的正向和反向解析
正向区域
反向区域
FQDN:Full Qualified Domain Name
www.magedu.com
一次完整的查询请求经过的流程:
Client --> hosts文件 --> DNS Service
Local Cache --> DNS Server(recursion) --> Server Cache --> iteration(迭代)
解析答案:
肯定答案;
否定答案:请求的条目不存在等原因导致无法返回结果;
权威答案;
非权威答案;
区域解析库:由众多RR组成;
资源记录:Resource Record,RR
记录类型:A,AAAA,PTR,SOA,NS,CNAME,MX
SOA:Start Of Authority,起始授权记录;一个区域解析库有且仅能有一个SOA记录,而必须为解析库的第一条记录;
A:internet Address,作用,FQDN --> IP
AAAA:FQDN --> IPv6
PTR:PoinTeR,IP --> FQDN
NS:Name Server,专用于标明当前区域的DNS服务器。
CNAME:Canoical Name,别名记录。
MX:Mail eXchanger,邮件交换器
资源记录定义的格式:
语法:name [TTL] IN rr_type value
注意:
(1)TTL可以从全局继承;
(2)@可用于引用当前区域的名字;
(3)同一个名字可以通过多条记录定义多个不同的值;此时DNS服务器会以轮询方式响应;
(4)同一个值也可能有多个不同的定义名字;通过多个不同的名字指向同一个值进行定义;此仅表示通过多个不同的名字可以找到同一个主机而已。
SOA:
name:当前区域的名字,例如”magedu.com.";
value:有多部分组成
(1)当前区域的主DNS服务器的FQDN,也可以使用当前区域的名字;
(2)当前区域管理员的邮箱地址;但地址中不能使用@符号,一般用.替代,例如linuxedu.magedu.com
(3)(主从服务器协调属性的定义以及否定的答案的统一的TTL) #属性就是笔记上面那些刷新时间啥的。
例如:
magedu.com 86400 IN SOA ns.magedu.com. nsadmin.magedu.com. (
2015042201;序号
2H ;刷新时间
10M ;重试时间
1W ;过期时间
1D ;否定答案的TTL值
)
NS:
name:当前区域的名字
value:当前区域的某DNS服务器的名字,例如ns.magedu.com.;
注意:一个区域可以有多个NS记录;
例如:
magedu.com IN NS ns1.magedu.com.
magedu.com IN NS ns2.magedu.com.
注意:
(1)相邻的两个资源记录的name相同时,后续可省略
(2)对NS记录而言,任何一个ns记录后面的服务器名字,都应该在后续有一个A记录;
MX:
name:当前区域的名字
value:当前区域的某邮件服务器(smtp服务器)的主机名;
一个区域内,MX记录有多个;但每个记录的value之前应该有一个数字(0-99),表示此服务器的优先级;数字越小优先级越高;
例如:
magedu.com. IN MX 10 mx1.magedu.com.
IN MX 10 mx2.magedu.com.
注意:
(1)对MX记录而言,任何一个ns记录后面的服务器名字,都应该在后续有一个A记录;
A记录:
name:某主机的FQDN,例如www.magedu.com.
value:主机名对应主机的IP地址;
例如:
www.magedu.com. IN A 1.1.1.1
www.magedu.com. IN A 1.1.1.2
mx1.magedu.com. IN A 1.1.1.3
mx2.magedu.com. IN A 1.1.1.3
注意:
*.magedu.com. IN A 1.1.1.4
magedu.com. IN A 1.1.1.4
避免用户写错名称时给错误答案,可通过泛域名解析进行解析至特定地址;
AAAA:
name:FQDN
value:IPv6
PTR:
name:IP,有特定格式,把IP地址反过来写,1.2.3.4,要写作4.3.2.1;而有特定后缀:in-addr.arpa. 所以完整写法为:4.3.2.1.in-addra.arpa.
value:FQDN
例如:
4.3.2.1.in-addr.arpa. IN PTR www.magedu.com
简写成:
4 IN PTR www.magedu.com.
注意:网络地址及后缀可省略;主机地址依然需要反着写;
CNAME:
name:别名的FQDN
value:正式名字的FQDN;
例如:
web.magedu.com IN CNAME www.magedu.com.
Linux:Day18(上) dns服务基础进阶的更多相关文章
- DNS服务基础原理介绍
FQDN 全称域名 localhost(主机名或者是别名).localdomain(域名) FQDN=主机名.域名 根域 . 顶级域名 .com .n ...
- Bind DNS服务——基础知识
Linux基础--Bind DNS服务 Part0 DNS简介 域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库 ...
- LINUX中的DNS服务---高速缓存DNS
一.什么是DNS Domain Name System,域名系统. 万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网.他主要负责把域名和IP的相互转换 ...
- 监控Linux服务器上python服务脚本
提供给公司使用的测试平台这两天频繁地挂掉,影响到相关同事的正常使用,决定在服务器上写个监控脚本,监控到服务挂了就启动起来,一分钟检查一次.注:后台服务使用的是python.监控脚本如下: NUM=`p ...
- LINUX中的DNS服务---DNS集群
一.DNS集群的理解 在使用DNS的时候,为了缓解服务器的压力,会使用多个辅助DNS服务器来分担主DNS的工作.这些DNS就叫做DNS集群. 二.配置过程 1)在辅DNS中操作如下:(主机号为172. ...
- LINUX中的DNS服务---DNS正向、反向和双向解析
一.DNS的正向解析 也就是域名解析为IP地址进行访问! 1)vim /etc/named.conf ----> 删除forwarders所在行 2)vim /etc/named.rf ...
- 1、DNS服务基础
w'indows上名称解析目录: C:\Windows\System32\drivers\etc https://jocent.me/2017/06/18/dns-protocol-principle ...
- DNS服务基础
DNS服务器的功能 – 正向解析:根据注册的域名查找其对应的IP地址 – 反向解析:根据IP地址查找对应的注册域名(不常用) NS(声明DNS记录) A(正向解析记录) CNAME(解析记录别名) 安 ...
- Linux 域名和DNS
名字解析的作用: TCP/IP网络中,设备之间的通信依赖IP地址来实现,但是IP地址不好记忆,所以就将每一台设备用一个名字来进行标识,但是这个名字计算机不能解析.所以就需要借助名字解析服务来实现将名字 ...
随机推荐
- elasticsearch常用命令备注
1.检查集群健康状态 curl 'localhost:9200/_cat/health?v' 2.检查节点健康状态 curl 'localhost:9200/_cat/nodes?v' 3.新增一条索 ...
- iOS客户端图片智能裁剪
 概述 所谓智能裁剪其实就是按照指定尺寸裁剪或显示出包含图片核心特征的区域,目前很多智能裁剪都是在服务器端做的,在客户端需要访问时直接裁剪放到Redis或者提前裁剪好以备访问.但是找了一圈直接在iO ...
- GitHub开源:SQLite 增强组件 Sheng.SQLite.Plus
Github:https://github.com/iccb1013/Sheng.SQLite.Plus Sheng.SQLite.Plus 是一个对直接使用 ADO.NET 方式操作 SQLite ...
- 使用BeanUtils类实现DTO之间的同名属性复制
开发中经常碰到这样的场景,从数据库查询出来全部的字段,但是有些字段是不想给 客户端看到,这时就需要将属性从DAO复制到传给客户端的DTO对象,如果采用get/set, 那显得很麻烦.可使用反射实现. ...
- ASP.NET Core Web API 集成测试中使用 Bearer Token
在 ASP.NET Core Web API 集成测试一文中, 我介绍了ASP.NET Core Web API的集成测试. 在那里我使用了测试专用的Startup类, 里面的配置和开发时有一些区别, ...
- 告别 hash 路由,迎接 history 路由
博客地址:https://ainyi.com/69 三月来了,春天还会远吗.. 在这里,隆重宣布本博客告别 Vue 传统的 hash 路由,迎接好看而优雅的 history 路由~~ 映照官方说法 v ...
- .net core api +swagger(一个简单的入门demo 使用codefirst+mysql)
前言: 自从.net core问世之后,就一直想了解.但是由于比较懒惰只是断断续续了解一点.近段时间工作不是太忙碌,所以偷闲写下自己学习过程.慢慢了解.net core 等这些基础方面学会之后再用.n ...
- [转]Blue Prism Login Agent 使用指导手册
本文转自:https://cloud.tencent.com/developer/news/83035 咳!咳!咳! 第一篇RPA技术文,还是贼拉鸡冻.各位大侠要多多支持啊 1.Login Agent ...
- 用Python写一个贪吃蛇
最近在学Python,想做点什么来练练手,命令行的贪吃蛇一般是C的练手项目,但是一时之间找不到别的,就先做个贪吃蛇来练练简单的语法. 由于Python监听键盘很麻烦,没有C语言的kbhit(),所以这 ...
- python 生成18年写过的博客词云
文章链接:https://mp.weixin.qq.com/s/NmJjTEADV6zKdT--2DXq9Q 回看18年,最有成就的就是有了自己的 博客网站,坚持记录,写文章,累计写了36篇了,从一开 ...