DNS域名解析服务

目录

前言

一、DNS服务

1、DNS的概念

2、DNS使用的协议以及端口

3、DNS的结构

4、DNS解析方式

4.1、正向解析

4.2、反向解析

5、DNS服务的查询方式

5.1、递归查询

5.2,迭代查询

6、DNS服务器的类型

6.1、缓存域名服务器

6.2、主域名服务器

6.3、从域名服务器

二、DNS服务配置与安装

1、BIND

1.1、BIND介绍

1.2、BIND服务器端程序

2、安装软件

3、配置正向区域数据文件

4、配置反向解析的配置


前言

在互联网的世界中,我们每天都依赖域名来访问各种网站和服务。想象一下,如果每次你想访问一个网站,都需要记住一串复杂的数字IP地址,那将会多么不方便。DNS(域名系统)就像互联网的电话簿,它将易记的域名转换为计算机能理解的IP地址,让我们可以通过简单的文字输入轻松访问所需的网络资源。本文将深入探讨DNS的作用及其对我们日常互联网体验的重要性。

一、DNS服务

1、DNS的概念

DNS,全称域名系统(Domain Name System),是互联网的重要基础服务之一。它的主要功能是将人类易记的域名(如www.example.com)转换成计算机可以识别的IP地址(如192.0.2.1)。这一转换过程被称为域名解析。简单来说,DNS就像互联网的电话簿,帮助我们找到并访问网络上的各种网站和服务。

2、DNS使用的协议以及端口

①、协议

  • UDP(用户数据报协议):默认情况下,DNS查询和响应使用UDP协议。UDP协议传输速度快,适合短小的数据传输,因此被广泛用于DNS查询。
  • TCP(传输控制协议):当DNS响应的数据包超过512字节时,或者进行区域传输(如主DNS服务器与辅助DNS服务器之间的数据同步)时,DNS会使用TCP协议进行传输。TCP协议提供可靠的连接,确保数据传输的完整性。

②、端口

  • 端口53:DNS服务使用的标准端口号是53,无论是UDP协议还是TCP协议,DNS查询和响应都通过这个端口进行通信。

3、DNS的结构

  • 主机名:主机名是指特定计算机或设备在网络中的名称,用于唯一标识这台设备。主机名通常放在域名的最左边,是域名的一部分。
  • 二级域:二级域通常位于顶级域(TLD)之前,是用户注册的主要部分。它是用户可自定义和注册的部分,通常代表公司名称、品牌或组织。例如,在域名"www.baidu.com."中,"baidu"就是二级域名
  • 一级域:一级域或顶级域是域名系统中最高级别的域,位于域名的最右边。例如,在域名www.baidu.com.中,com就是顶级域。顶级域包括通用顶级域(如.com, .org, .net)和国家代码顶级域(如.cn, .us)。
  • 根域:根域是域名系统的最顶层,表示整个DNS系统的根。根域通常用一个点(.)表示,但在实际使用中,这个点通常省略不写。例如,www.example.com.的最后一个点表示根域,不过通常在浏览器中不会显示这个点。

4、DNS解析方式

4.1、正向解析

根据域名查找对应的IP地址

4.2、反向解析

根据IP地址查找对应的域名

5、DNS服务的查询方式

5.1、递归查询

递归查询是一种 DNS 服务器的查询模式,在该模式下 DNS 服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果 DNS 服务器本地没有存储查询 DNS 信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。

5.2,迭代查询

DNS 服务器另外一种查询方式为迭代查询,当客户机发送查询请求时,DNS 服务器并不直接回复查询结果,而是告诉客户机另一台 DNS 服务器地址,客户机再向这台 DNS 服务器提交请求,依次循环直到返回查询的结果为止

6、DNS服务器的类型

6.1、缓存域名服务器

①、也称为DNS高速缓存服务器

②、通过向其他域名服务器查询获得域名 ->IP地址记录

③、将域名查询结果缓存到本地,提高重复查询时的速度

6.2、主域名服务器

①、特定DNS区域的权威服务器,具有唯一性

②、负责维护该区域内所有域名->IP地址的映射记录

③、需要自行建立所负责区域的地址数据文件

6.3、从域名服务器

①、也称为辅助域名服务器,是对主域名服务器的热备份

②、其维护的域名->IP地址记录来源于主域名服务器

③、需要从主域名服务器自动同步区域地址数据库

二、DNS服务配置与安装

1、BIND

1.1、BIND介绍

BIND(Berkeley Internet Name Daemon)

相关软件包:

  • bind-9.9.4-37.el7.x86 64.rpme
  • bind-utils-9:9.4-37.el7.x86 64.rpme
  • bind-libs-9.9.4-37.el7.x86 64.rpme
  • bind-chroot-9.9.4-37.el7.x86 64.rpm
1.2、BIND服务器端程序
  • 主要执行程序:/usr/sbin/named
  • 默认监听端口:53
  • 主配置文件:*/etc/named.conf
  • 保存DNS解析记录的数据文件位于:*/var/named/

2、安装软件

mount /dev/sr0 /mnt/ #挂载

cd /etc/yum.repos.d/ #切换到yum.repos.d目录下

mkdir back #创建back目录

mv *.repo back/ #把所有.repo文件都移到back目录下

vim local.repo #vim编辑文件

[local]

name=local

baseurl=file:///mnt #编辑文件内容

enabled=1

gpgcheck=0

yum clean all && yum makecache #清楚yum并且重新加载

yum install -y bind* #安装bind软件

3、配置正向区域数据文件

rpm -q bind #查看 bind 的软件呢是否安装

vim /etc/named.conf #进入文件进行修改

  • 进入vim编辑页面

cd /var/named/ #切换到named目录下

cp named.localhost benet.com.zone #复制源文件到benet

vim benet.com.zone #进入这个文件进行修改

  • 进入vim编辑页面并进行添加

systemctl start named #开启

systemctl status named #查看状态是否开启

  • 验证:

4、配置反向解析的配置

①、安装bind软件包

②、配置 vim /etc/named.conf 文件

③、进入 vim /etc/named.rfc1912.zones 修改区域配置文件

cp benet.com.zone benet.com.zone.local #复制

vim benet.com.zone.local #进入vim编辑

  • vim编辑内容:

systemctl restart named #重启

  • 验证:
相关推荐
小安运维日记3 分钟前
Linux云计算 |【第三阶段】PROJECT1-DAY1
linux·运维·云计算·apache
pyliumy20 分钟前
rsync 全网备份
linux·运维·服务器
苹果醋342 分钟前
SpringCloud系列之一---搭建高可用的Eureka注册中心
运维·nginx
诚诚k1 小时前
docker存储
运维·docker·容器
sorel_ferris1 小时前
Ubuntu-24.04中Docker-Desktop无法启动
linux·ubuntu·docker
ggb19991 小时前
【python的坑】vpn下,python request报错 check_hostname requires server_hostname
linux·运维·服务器
小O_好好学1 小时前
vi | vim基本使用
linux·编辑器·vim
-SGlow-1 小时前
Linux相关概念和重要知识点(4)(自举、vim)
linux·运维·vim
多多*2 小时前
OJ在线评测系统 登录页面开发 前端后端联调实现全栈开发
linux·服务器·前端·ubuntu·docker·前端框架
卑微的码蚁2 小时前
服务器相关问题
运维·服务器