一:DNS解析层次结构

如图所示(图片来自网络):DNS是逐级查询

域名后缀一般分为国际域名和国内域名,常见的域名后缀有.com(商业组织)、.org(非盈利组织)、.gov(政府部门)、.net(网络服务商)、.edu(教研机构)、.pub(公共大众)、.cn(中国国家顶级域名)等。

解析答案:

肯定答案:否定答案:请求的条目不存在等原因导致无法返回结果权威答案:你请求的dns服务器正好是负责这个链接域的dns非权威答案:dns服务器问别人,别人告诉它的,有时候会是假的,比如国外某些网站访问不了,就是dns告诉给你一个错误的答案,不让你访问(DNS的污染,信息篡改了)

备注:名字解析成不成功和能不能上网是两码事

做实验所需的配置文件:

/etc/named.conf          主配置文件 服务器主要运行参数
/etc/named.rfc1912.zones  区域文件,主要指定要解析哪个域名
/var/named                数据目录
/var/named/xxx.xx        数据文件,用来对应域名和ip关系

二.DNS的 正向解析

在DNS域名解析服务中,正向解析是指根据域名(主机名)查找到对应的IP地址。

实验如下:

<1>正向解析

步骤一:调整实验环境

将提供解析的ip在/etc/resolv.conf里修改为服务器的ip,并将之前网络配置里面DNS1=114.114.114.114删掉


步骤二:编辑区域文件

我们可以在主配置文件里面看见,它可以读取区域文件 /etc/named.rfc1912.zones

我们此时有一个域meng.com需要进行管理,所以需要去编辑区域文件(其实也可以将要管理的域写在主配置文件里,但这样会使主配置文件变得很长,为了方便与整齐,我们统一将其写在区域文件里)

vim   /etc/named.rfc1912.zones


在里面写入以下内容

步骤三:编辑数据文件

因为我们自定义的这个数据文件格式与/var/named/named.localhost(模版文件)格式相同,所以我们将其复制过来(记得要将权限一起复制过来,否则named服务起不来)

cp -p named.localhost  meng.com.zone      复制并保留原始文件的权限
vim meng.com.zone                             编辑数据文件


在里面写入以下内容(不能忘记写.否则服务起不来)

步骤四:重启服务

systemctl restart named


测试


<2>CNAME(名称到“规范名称“,(包括A/AAAA记录的另一个名称))

其实上面的话通俗一点来说就是域名转换(相当于一个域名对应两个ip,进行轮循)

实验如下:

在数据文件为meng.come.zone里写入以下内容


重启DNS服务,总体如下图所示:

测试:

dig www.baidu.com


如果ip不变化,可以多试着dig几次,因为进行交替也需要时间。

<3>MX(邮件解析)

邮件交换记录 (MX record)是域名系统(DNS)中的一种资源记录类型,用于指定负责处理发往收件人域名的邮件服务器。MX记录允许设置一个优先级,当多个邮件服务器可用时,会根据该值决定投递邮件的服务器。简单邮件传输协议(SMTP)会根据MX记录的值来决定邮件的路由过程。

例如:此时我要发送一封邮件给163.com,但我自己是qq.com,这个时候MX的作用就是识别这封发送邮件的域名163.com,将其解析出来,会得到一个值,然后简单邮件传输协议(SMTP)会根据MX的值来决定邮件的发送。

实验如下:

前提:

此时我们去发送一封邮件,系统会告诉我们这个域名不存在,这说明是我们的DNS的问题

我们查看这个错误,发现是域名不存在

此时为了解决这个问题,我们需要去配置我们的DNS,步骤如下:

在数据文件为meng.come.zone里写入以下内容(注意写.)


重启服务

此时再去发送邮件,发现报错被拒绝,是因为172.25.254.115的25端口没开(STMP协议的端口号),但此时我们可以知道,DNS邮件地址解析成功。


dig发送的域名,可以检测到dig -t 指定要查询的DNS数据类型

三:DNS的反向解析

用于IP地址到域名的映射,当DNS客户端请求解析某个IP地址时,DNS服务器通过反向查找,返回给DNS客户端对应的域名。

实验如下:

第一步:编辑区域文件

vim   /etc/named.rfc1912.zones


在区域文件里面写入以下的内容


第二步:编辑数据文件

因为我们自定义的这个数据文件格式与/var/named/named.localhost(模版文件)格式相同,所以我们将其复制过来(记得要将权限一起复制过来,否则named服务起不来)

cp -p named.localhost  172.25.254.ptr      复制并保留原始文件的权限
vim      172.25.254.ptr


在里面写入


第三步:重启服务


测试:

用dig -x 执行逆向域名查询



四:DNS双向解析

双向解析即在不同的主机中,当访问同一个域名时,会出现不同的ip。

在企业中,我们需要内部的主机访问的时候获取的网段ip与外网的主机访问到的网段ip不同,这能大大的强化企业环境安全性。

实验如下:

第一步:编辑外网的数据文件

将正向解析库进行复制,复制过来的这个文件是外网来访问的时候读取的文件,里面有外网主机可以获得的ip。

cp -p meng.com.zone  meng.com.outer.zone
ls
vim  meng.com.outer.zone




第二步:编辑外网的局域文件

cp -p /etc/named.rfc1912.zones  /etc/named.rfc1912.outer.zones
vim /etc/named.rfc1912.outer.zones



在里面写入

第三步:编辑主配置文件

vim /etc/named.conf


在里面将如图所示的代码注释掉(让原本的域名解析部署失效)


在里面添加以下如图内容

第四步:重启服务

测试:

在本机上dig域名,查询到的是172.25.254网段的

在别的主机上dig域名,查询到的是1.1.1网段的

DNS的正向、反向、双向解析(正向解析内含CNAME,MX)相关推荐

  1. DNS域名解析服务正向反向解析

    一.DNS的定义 DNS是"域名系统"的英文缩写.它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网.DNS服务使用TCP和UDP的53端口,TCP的53 ...

  2. LinuxProbe 0x16 安装Bind服务程序、正向/反向解析、从署服务器、加密传输dns、缓存服务器、分离解析

    几天没写, csdn的编辑器都换了, 找不到之前的入口了, 新的编辑器不是很好用,不知道排版出来怎么样,将就看吧... 安装Bind服务程序 BIND(Berkeley Internet Name D ...

  3. 使用Android BindingAdapter与InverseBindingAdapter实现SeekBar双向(正向/反向)数据绑定...

    使用Android BindingAdapter与InverseBindingAdapter实现SeekBar双向(正向/反向)数据绑定 在我之前写的系列文章中,继续深化Android数据绑定技术的使 ...

  4. DNS知识点及服务搭建案例和解析状态异常

    概念 DNS (Domain Name System)域名解析服务器 linux 常用软件 BIND:另译 Berkeley Internet Name Domain 作用: 通过将主机名(FQDN ...

  5. 全网详细介绍nginx的反向代理、正向代理配置,location的指令说明,反向代理的两个示例代码以及全局块,events块和http快的说明。

    文章目录 1. 文章引言 2. 何谓反向代理 3. 解析nginx的配置文件 3.1 全局块(global block) 3.2 events块(events block) 3.3 http块(htt ...

  6. nginx和gunicorn相关,反向代理和正向代理区别,静态资源和动态资源

    nginx官网:http://nginx.org/ nginx github:https://github.com/nginx/nginx 反向代理和正向代理区别:https://www.cnblog ...

  7. Nginx基础学习笔记(正向/反向代理,Nginx均衡负载和配置)

    目录 1. 正向代理和反向代理 1.1 正向代理 (1)什么是正向代理? (2)正向代理的特点 (3)正向代理的用途 1.2 反向代理 (1)什么是反向代理? (2)反向代理的特点 (3)反向代理的用 ...

  8. 图解反向代理和正向代理。

    反向代理和正向代理都是在客户机和服务器传递数据中很重要的部分. 1.正向代理 正向代理的一个很经典的案例就是 ***. 当信息的发起者无法直接将信息递给信息的接受者时,发起者则不得不通过正向代理来作为 ...

  9. 反向迭代器和正向迭代器

    文章目录 反向迭代器和正向迭代器 1. 正向迭代器 1.1 list结构 1.2 list代码框架 1.3 代码结合框架 1.3.0 list_node类 1.3.1 list类 1.3.2 list ...

最新文章

  1. FirewallD 详解
  2. linux系统的通讯工具,Linux下即时通讯工具:Pidgin 2.5.0正式发布了
  3. APP功能需求第一版
  4. servlet的一些简单理解
  5. 信息安全系统设计基础第二周学习总结
  6. c语言程序能够在不同的操作系统下运行,这说明c语言具有很好的,上海交通大学继续教育学院2012春——程序设计(C)作业1(有答案)...
  7. 15-Flutter移动电商实战-商品推荐区域制作
  8. 吐槽贴:用ELECTRA、ALBERT之前,你真的了解它们吗?
  9. 单进程服务器-select版
  10. [GNU LD系列 3.3] 简单的链接脚本例程
  11. iPad mini 5外形曝光:并非全面屏设计
  12. Pipenv – 超好用的 Python 包管理工具 1
  13. K8S 使用 SideCar 模式部署 Filebeat 收集容器日志
  14. Android Studio中进行单元测试
  15. 《加速器理论(第二版)》读书笔记
  16. oracle sqlldr命令6,oracle sqlldr命令
  17. 《Spring Boot极简教程》第1章 Spring Boot史前简述
  18. Java实习生常规技术面试题每日十题Java基础(一)
  19. SpringBoot整合RocketMQ
  20. 内存泄漏工具VLD安装及使用

热门文章

  1. jQuery.validationEngine插件使用
  2. 并行算法设计与性能优化 刘文志 第4章 串行代码性能优化
  3. GPU上大规模稀疏矩阵特征值计算高效算法之三——SLEPc测试
  4. 线上 mysql连接超时_线上环境数据库连接超时原因
  5. 科研实习 | 清华大学交叉信息研究院弋力老师课题组招收科研实习生
  6. LoadImage加载失败(win32)
  7. 搭建Maven私服(nexus)-windows版
  8. HHKB 使用一月体验
  9. 学会使用5W1H来写作博客
  10. 收集适合diy的电子制作资料