linux杂谈(十八):DNS服务器的配置(一)

简介: 原文地址: http://blog.chinaunix.net/uid-29622064-id-4242123.html 1.DNS服务器简介域名系统(英文:Domain Name System,縮寫:DNS)是因特网的一项服务。

原文地址: http://blog.chinaunix.net/uid-29622064-id-4242123.html

1.DNS服务器简介

域名系统英文Domain Name System,縮寫DNS)是因特网的一项服务。它作为将域名IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。DNS 使用TCPUDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

在dns出现之前,我们把域名和IP的对照存放在/etc/hosts文件里边,但是随着IP的不断增大,使用文件存放显得不够了。而且不利于和其他的主机进行同步,DNS应运而生。

DNS的结构:他是利用树形目录的架构。将主机名的管理分配在不同层级的DNS服务器,让每一层的修改和查找都变得功能单一。

DNS查询主机名的流程:

(1)先在本机有没有记录,没有的话向(.root)查询;
(2)向最顶层的.查询;
(3)然后分层的查询,每次只查询它所对的下一层。
(4)查到之后记录缓存,并且将路径返回给用户。

注:在系统中我们可以通过dig命令进行路径追踪。

工作流程如图所示:


2.搭建DNS服务器


今天我们来自己搭建一个DNS服务器,这样的需求在公司的内部还是有的。

首先我们来查找安装dns的包有那些:


安装dns服务器:


开启服务后看到dns服务开启的端口号是53:


接下来我们要修改配置文件提供相应的服务,这里我们为了安全期间,在/var/named/chroot的目录下修改配置文件,而不直接对/etc/named目录下的文件进行修改,两者是同步的,但是有一个约束条件,前者只有在dns开启成功的情况下才能使用!!!



我们在选项中关闭了ipv6的开放,而且允许任意用户使用。



主配置文件的最后两行分别是副配置文件和我们的dns加密文件:



(1)DNS的正向解析:
我们依次来查看:



我们来设置自己的域名系统,上边的是模板,底下的我们指定了域名配置文件的名称,这个要自己创建,位置在/var/named/chroot/var/named下:



这个目录底下也有域名配置文件的模板,我们拷贝一份并进行设置:



这个是初始模样,请务必记住,并且和修改之后的进行对比:



修改之后的:



注意:这里的@等于example.com. 所以在最后两行,如果没有把域名补全的话,系统会把@所代表的值添加到末尾,并且注意每个com后边还有一个点。

这个时候我们重启服务,并且查看火墙是否已经关闭:



服务端设置好之后,我们在另外一台机子上访问dns服务器。

首先要做的就是修改ifcfg-eth0文件里的DNS1参数为指定DNS服务器的IP:192.168.2.100.然后重新启动network服务:




重新启动network:





我们追踪了一下,发现可以找到www.example.com,并且dns服务器为192.168.2.100这就说明我么之前的dns服务器配置是没有问题的。


上述部分是dns服务器的正向解析,同时我们还知道dns具有反向解析的能力,那如何实现呢,当然还是要修改配置文件了,与正向解析的步骤差别不大。

(2)DNS的反向解析:

回到副配置文件中,在目录/var/named/chroot/etc下:



看到我们IP的书写格式了么,是的,既然是反向解析,IP的书写顺序也是相反的,并且指定了配置文件:



跳转到配置文件目录,首先我们拷贝反向解析配置文件的模板,然后进行编辑:



这个是模板的格式:



我们修改之后的样子:



记住最后一行,它代表的意思是192.168.2.200所对应的域名是ptr.example.com.这个是我们等会检验配置是否正确的标准。

退出保存后重启dns服务:



回到客户机我们来反向解析一下192.168.2.200是什么域名:



小结:

     如上所讲,dns的正向解析和反向解析已经完成,但是这样的功能有点单一化,事实上它还有些不使用,比如说如何去同步的修改,如何和dhcp共同协作提供ddns的服务,这些我们在下节讲解。

目录
相关文章
|
3天前
|
Linux Shell
【Linux】深度解析Linux中的几种进程状态
【Linux】深度解析Linux中的几种进程状态
|
4天前
|
分布式计算 DataWorks 调度
DataWorks操作报错合集之DataWorks配置参数在开发环境进行调度,参数解析不出来,收到了 "Table does not exist" 的错误,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
18 0
|
4天前
|
算法 安全 Linux
深度解析:Linux内核内存管理机制
【4月更文挑战第30天】 在操作系统领域,内存管理是核心功能之一,尤其对于多任务操作系统来说更是如此。本文将深入探讨Linux操作系统的内核内存管理机制,包括物理内存的分配与回收、虚拟内存的映射以及页面替换算法等关键技术。通过对这些技术的详细剖析,我们不仅能够理解操作系统如何高效地利用有限的硬件资源,还能领会到系统设计中的性能与复杂度之间的权衡。
|
5天前
|
存储 关系型数据库 MySQL
linux安装MySQL8.0,密码修改权限配置等常规操作详解
linux安装MySQL8.0,密码修改权限配置等常规操作详解
|
5天前
|
网络协议 Windows
Windows Server 各版本搭建 DNS 服务器实现域名正反向解析
Windows Server 各版本搭建 DNS 服务器实现域名正反向解析
|
5天前
|
分布式计算 大数据 数据处理
MaxCompute操作报错合集之在开发环境中配置MaxCompute参数进行调度,但参数解析不出来,如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
6天前
|
存储 安全 数据管理
【专栏】如何在 Rocky Linux 8 上安装和配置 Elasticsearch
【4月更文挑战第28天】本文指导在Rocky Linux 8上安装配置Elasticsearch,包括添加仓库,运行`yum install elasticsearch`进行安装,修改配置文件如`cluster.name`和`network.host`,启动服务并验证其正常运行。同时,文章提及了内存、文件描述符设置及安全配置,并列出常见问题及解决方法,帮助用户成功搭建Elasticsearch。
|
6天前
|
Linux 网络安全 Docker
【Linux】-docker配置容器并打包成镜像
【Linux】-docker配置容器并打包成镜像
|
6天前
|
存储 缓存 网络协议
【专栏】DNS服务器是否可以加快我们的网络访问速度
【4月更文挑战第28天】本文探讨了DNS服务器是否能加快网络访问速度。DNS负责将域名转换为IP地址,其查询时间、缓存机制和地理位置都影响网络速度。优化DNS配置,如选择快速的公共DNS服务、使用附近的服务器、确保设备正确配置和利用DNS缓存,都能有效提升网络体验。理解并优化DNS设置对于提高网络速度至关重要。
|
6天前
|
网络协议 Linux 开发工具

相关产品

  • 云解析DNS