DNS域名解析四种配置实验 ---Linux DNS域名解析服务
DNS域名解析服务
一.BIND域名服务基础
1) DNS的定义
2)域名结构
3)DNS系统的作用
① 正向解析:根据域名查找对应的IP地址
② 反向解析:根据IP地址查找对应的域名
③ DNS系统的分布式数据结构
4)DNS服务器类型
二.BIND软件安装
BIND (Berkeley Internet Name Daemon)
相关软件包
BIND服务器端程序
BIND服务控制
配置正向解析:
配置反向解析:
配置主从域名服务器:
配置分离解析:
一.BIND域名服务基础
在日常生活中人们习惯使用域名访问服务器,但机器间互相只认IP地址,域名写IP地址之间是多对一的关系,一个ip地址不一定只对应一个域名,且一个完整域名只可以对应一个ip地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的
1) DNS的定义
• DNS是“域名系统”的英文缩写。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网
• DNS服务使用TCP和UDP的53端口,TCP的53端 口用于连接DNS服务器,UDP的53端口用于解析DNS
• 每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符
2)域名结构
http: / /www. sina. com. cn./
http://主机名.子域.二级域.顶级域 根域/
3)DNS系统的作用
① 正向解析:根据域名查找对应的IP地址
② 反向解析:根据IP地址查找对应的域名
③ DNS系统的分布式数据结构
树状结构最顶层称为根域,用“. ”表示,相应服务器称为根服务器,整个域名空间解析权都归根服务器所有,但根服务器无法承担庞大的负载,采用“委派"机制,在根域下设置了一些顶级域,然后将不同顶级域解析权分别委派给相应的顶级域服务器,如将com域的解析权委派给com域服务器,以后但凡根服务器收到以com结尾的域名解析请求,都会转发给com域服务器,同样道理,为了减轻顶级域的压力,又下设了若干二级域,二级域又下设三级域或主机
根域
位于域名空间最顶层,一般用一个“.” 表示
顶级域
一般代表—种类型的组织机构或国家地区
如. net (网络供应商)、.com(工商 企业)、.org (团体组织)、.edu (教育机构)、. gov (政府部门)、. cn(中国国家域名)
二级域
用来标明顶级域内的一-个特定的组织,国家顶级域下面的二级域名由国家网络部门统一管理
如.cn 顶级域名下面设置的二级域名: .com.cn、.net.cn、.edu.cn
子域
二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名
主机
主机位于域名空间最下层,就是一台具体的计算机
如www、mail都是具体的计算机名字,可用www. sina. com.cn… mail.sina.com.cn. 来表示,这种表示方式称为FQDN(完全合格域名),也是这台主机在域名中的全名
4)DNS服务器类型
1.主域名服务器: 负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。构建主域名服务器时,需要自行建立所负责区域的地址数据文件
2.从域名服务器: 当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务。从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器。构建从域名服务器时需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库
3.缓存域名服务器: 只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但没有域名数据库。它从某个远程服务器取得每次域名服务器查询的结果,并将它放在高速缓存中,以后查询相同的信息时用它予以响应。缓存域名服务器不是权威性服务器,因为提供的所有信息都是间接信息。构建缓存域名服务器时,必须设置根域或指定其他DNS服务器作为解析来源
4.转发域名服务器: 负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果
注:DNS查询方式分为递归查询和迭代查询
二.BIND软件安装
BIND (Berkeley Internet Name Daemon)
• BIND是应用最广泛的DNS服务程序
• 官方站点: https://www.isc.org/
相关软件包
• bind-9.9.4-37.el7.x86_ 64.rpm
• bind-utils-9.9.4-37.el7.x86_64.rpm
• bind-libs-9.9.4-37.el7 .x86_ 64.rpm
• bind-chroot-9.9.4-37.el7.x8664.rpm
BIND服务器端程序
• 主要执行程序: /usr/sbin/named
• 默认监听端口: 53
• 主配置文件
◆/etc/named.conf
• 保存DNS解析记录的数据文件位于
◆/var/named/
BIND服务控制
• systemctl [status|startlstoplrestart] named.service
配置正向解析:
1.挂载,安装bind软件包,查看需要修改的配置文件所在路径
2.修改主配置文件

3.修改区域配置文件,添加正向区域配置

4.配置正向区域数据文件

5.启动服务,关闭防火墙

6.在客户端的域名解析配置文件中添加DNS服务器地址

举例

安装软件包:

编辑主配置文件:

编辑区域配置文件:


复制区域数据配置文件:




测试:




配置反向解析:
1.挂载,安装bind软件包,查看需要修改的配置文件所在路径

2.修改主配置文件

3.修改区域配置文件,添加反向区域配置

4.配置反向区域数据文件

举例
注:前面配置正向解析,安装包已经装过了以及主配置文件里面也配置了,这里不需要再改主配置文件,直接到区域配置文件配置
修改区域配置文件,添加反向区域配置:


配置反向区域数据文件:


测试:


配置主从域名服务器:
1.修改主域名服务器的区域配置文件,修改正、反向区域配置

2.修改从域名服务器的主配置文件(开启新的服务器)

3.修改从域名服务器区域配置文件,添加正、反区域配置

4.主、从都重启动服务,并查看区域数据文件是否已下载成功
systemctl. restart named
ls -1 /var/ named/ slaves/
5.在客户端的域名解析配置文件中添加从DNs服务器地址
echo “nameserver 192.168.80.11” >> /etc/ resolv . conf
举例
1.开启一台新的虚拟机,挂载、安装软件包bind
2.修改主域名服务器的区域配置文件,修改正、反向区域配置





3.修改从域名服务器的主配置文件(开启新的服务器)






测试:


配置分离解析:




 
举例







注:内网为192.168.116.90;外网为12.0.0.1




注:一旦启用view,所有的zone必须都在view下,所以要把系统默认的自检用的zone也放在view下或者删除








DNS域名解析四种配置实验 ---Linux DNS域名解析服务的更多相关文章
- Dubbo注册中心的四种配置方式详解
		
Dubbo目前支持4种注册中心,(multicast,zookeeper,redis,simple) 推荐使用Zookeeper注册中心. 一.Multicast注册中心 不需要启动任何中心节点,只要 ...
 - springMVC_04controller四种配置总结
		
一.通过url对应bean,加粗部分为必须有的 <bean class=" org.springframework.web.servlet.handler.BeanNameUrlHan ...
 - Nginx之upstream的四种配置方式
		
1.轮询(weight) 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况.默认当weight不指定时,各服务器weight相同,每个请求按时间顺序逐一分配到不同的后端服务 ...
 - Mysql四种通信协议(linux下本地连接的都是socket 其他都是tcp)
		
Mysql通信协议 - 张冲andy - 博客园 https://www.cnblogs.com/andy6/p/6204579.html
 - Linux DNS 服务器安装、配置和维护
		
每个 IP 地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开.有了主机名,就不要死记硬背每台 IP 设备的 IP 地址,只要记住相对直观有意义的主机名就行了.这就是 DNS ...
 - 配置域主DNS服务器
		
一.DNS服务器的类型 ①Primary DNS Server(Master) 一个域的主服务器保存着该域的zone配置文件,该域所有的配置.更改都是在该服务器上进行,本篇随笔要讲解的也是如何配置一个 ...
 - DNS服务器搭建与配置
		
DNS服务器搭建与配置目录 1.DNS查询方式 2.DNS服务器类型 3.DNS主要配置文件组 4.name.conf文件配置介绍 5.DNS的资源记录格式 6.DNS服务器和客户端配置 7.简单搭建 ...
 - 第八节: Quartz.Net五大构件之SimpleThreadPool及其四种配置方案
		
一. 简介 揭秘: SimpleThreadPool是Quartz.Net中自带的线程池,默认个数为10个,代表一个Scheduler同一时刻并发的最多只能执行10个job,超过10个的job需要排队 ...
 - 第九节: 利用RemoteScheduler实现Sheduler的远程控制  第八节: Quartz.Net五大构件之SimpleThreadPool及其四种配置方案  第六节: 六类Calander处理六种不同的时间场景  第五节: Quartz.Net五大构件之Trigger的四大触发类  第三节: Quartz.Net五大构件之Scheduler(创建、封装、基本方法等)和Job(创建、关联
		
第九节: 利用RemoteScheduler实现Sheduler的远程控制 一. RemoteScheduler远程控制 1. 背景: 在A服务器上部署了一个Scheduler,我们想在B服务器上 ...
 
随机推荐
- Step By Step(Lua数据持久化)
			
Step By Step(Lua数据持久化) 1. 数据文件: 我们可以利用Lua中table的构造式来定义一种文件格式,即文件中的数据是table构造并初始化的代码,这种方式对于Lua程序而言 ...
 - 深度人脸识别:CVPR2020论文要点
			
深度人脸识别:CVPR2020论文要点 Towards Universal Representation Learning for Deep Face Recognition 论文链接:https:/ ...
 - 将代码生成器带入TVM
			
将代码生成器带入TVM 为了使数据科学家不必担心开发新模型时的性能,硬件后端提供程序(例如Intel,NVIDIA,ARM等)可以提供诸如cuBLAS或cuDNN之类的内核库以及许多常用的深度学习内核 ...
 - VGG16迁移学习实现
			
VGG16迁移学习实现 本文讨论迁移学习,它是一个非常强大的深度学习技术,在不同领域有很多应用.动机很简单,可以打个比方来解释.假设想学习一种新的语言,比如西班牙语,那么从已经掌握的另一种语言(比如英 ...
 - 代码生成codegen
			
代码生成codegen 该模块提供了从SymPy表达式生成直接可编译代码的功能.该codegen功能是SymPy中代码生成功能的用户界面.下面为可能希望直接使用框架的高级用户提供了一些实现细节. 注意 ...
 - 适用于Linux 2的Windows子系统上的CUDA
			
适用于Linux 2的Windows子系统上的CUDA Announcing CUDA on Windows Subsystem for Linux 2 为了响应大众的需求,微软在2020年5月的构建 ...
 - 基于ARMv8的固件系统体系结构
			
基于ARMv8的固件系统体系结构 The architecture of ARMv8-based firmware systems 自2011年发布以来,ARMv8处理器架构在移动设备市场上已经相当普 ...
 - Charles下载及安装破解-自己编辑
			
Charles下载地址 地址:https://www.charlesproxy.com/latest-release/download.do 2. Charles破解 破解地址:https://www ...
 - mybatis——解决属性名和数据库字段名不一致问题(注解方式)
			
当我们使用注解开发时有时会遇到数据库字段名与实体类属性名不一致的问题.xml方式开发可以通过结果集映射的方式解决,那注解方式开发要怎么解决呢? 注解解决方式: @Results()注解 Results ...
 - 【九】Kubernetes 之 Service 概念图文讲解及功能演示
			
Service 概念 Kubernetes Service 定义了这样一种抽象:逻辑上的一组 Pod,一种可以访问它们的策略 -- 通常称为微服务. Service 通常是通过 Label Selec ...