域名解析服务器(DNS)

2024-05-23 22:28
文章标签 服务器 域名解析 dns

本文主要是介绍域名解析服务器(DNS),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

简介

        DNS

        域名

        域名结构

        域名服务器类型

        相关指令

实验内容 

        软件

 实验准备

正向解析实验 

        服务端操作

        客户端操作

逆向解析实验 

        服务端操作

        客户端操作


简介

        DNS

        DNS(Domain Name System)时互联网上的一项服务,作为将域名和IP地址互相映射的一个分布式数据库,能更方便人们访问互联网;DNS服务的监听端口是UDP协议的53端口。

        域名

        因特网采用层次树状结构的命名方法,任何连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名(Domain Name)。

        域名只是逻辑概念,并不代表计算机所在的物理地点。

        域名结构

        域名可分为三大类:国家顶级域名、通用顶级域名、基础结构域名

        国家顶级域名:采用ISO3166标准;cn为中国、us为美国、uk为英国等。

        通用顶级域名:com代表企业公司、net代表网络服务机构、org代表非盈利组织、int代表国际组织、gov代表政府部门等。

        基础结构域名:该顶级域名只有一个---arpa,用于域名转换为IP地址,因此成为反向域名。

        域名服务器类型

        根域名服务器:顶层的域名服务器,知道所有顶级域名服务器的域名和IP地址

        顶级域名服务器:负责管理在该顶级域名注册的二级域名

        权限域名服务器: 负责一个区域的域名

        本地域名服务器:不属于域名服务器的层次结构,但对域名系统非常重要;当主机发出DNS请求时,查询请求就发送给本地域名服务器

        缓存DNS服务器:不负责解析域,只缓存域名解析的结果

        相关指令

        nslookup

                用于查询DNS记录,查看域名解析是否正常,在网络故障时可以用来诊断网络问题;Liunx和Windows都可以使用该命令

                非交互模式:nslookup + 需要解析的域名或IP地址

                交互模式: 使用nslookup命令进入交互模式(ctrl + Z退出交互模式)

        dig 

                是一个域名查询工具;可以从DNS服务器查询主机地址信息,获取到详细的域名信息

                安装

                Debian(Ubuntu、kali...)系列:

apt-get install dnsutils

                RedHat(RedHat、Centos、Fedora...)系列:

yum install bind-utils

                使用

dig + 需要解析的域名或IP地址

        其中status的值为状态指示

        NOERROR:查询成功

        SERVFAIL:DNS服务器执行查询时遇到错误,无法完成请求

        NXDOMAIN:查询的域名不存在记录

        使用 dig -x + 需要查询的域名或IP地址

        注意:dig会从域名的官方服务器上获取到精确的结果;nslookup只会获得DNS服务器保存在cache中非权威的解答

实验内容 

        软件

        bind是提供DNS服务的软件,它的守护进程名是named

        安装

yum install bind

         检查安装情况

rpm -qc bind

 实验准备

        实验设备

        两个操作系统,一个作为客户端,一个作为服务器

        服务器

        客户端

        修改服务器named配置

cp /etc/named.conf /etc/named.conf_bak        #备份配置文件

vim /etc/named.conf

         将127.0.0.1和localhost修改为any        #允许所有人访问本机DNS

        关闭SELiunx

setenforce 0

        关闭防火墙

 systemctl stop firewalld.service

正向解析实验 

        实验将域名解析为IP地址

        服务端操作

        编辑区域配置文件

cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones_bak        #备份配置文件

vim /etc/named.rfc1912.zones

        在配置文件末尾添加

zone "hello.com" IN {
        type master;
        file "hello.com.zone";
        allow-update { none; };
};                                                                 #hello.com为域名,可自定义

        编辑正向解析文件

        复制正向解析模板 

 cd /var/named/        #进入文件位置

cp -a named.localhost hello.com.zone        #拷贝并重命名;hello.com要与上面域名一致

vim hello.com.zone        #进入文件编辑

         修改前

        修改后 (保存退出)

         hello.com.        #自定义域名

        192.168.73.130        #域名对应的IP地址(为了简化实验将其设置为服务器IP地址)

        www.        ftp.        www1.        #匹配域名的前缀

        重启服务

systemctl restart named

        客户端操作

        修改网络适配器文件

        客户端网络适配器为ens160

        进入网络适配器配置文件 

vim /etc/NetworkManager/system-connections/ens160.nmconnection

        添加DNS服务器地址 

dns=192.168.73.130        #dnsIP地址为服务器IP地址

        重启网络适配器

 nmcli connection reload                #重启服务

nmcli connection up ens160                #重启网络适配器

         测试正向解析

逆向解析实验 

        服务端操作

        主要配置文件与正向解析相同,区域配置文件中添加逆向解析配置

vim /etc/named.rfc1912.zones

        添加以下配置 

        73.168.192为服务器端IP地址的网络位

        注意:IP地址需要反向书写

zone "73.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.73.arpa";
        allow-update { none; };
};

         编辑反向解析文件

        复制反向解析模板

cd /var/named/        #进入配置位置

cp -a named.loopback 192.168.73.arpa        #拷贝并重命名文件为反向解析的IP地址

vim 192.168.73.arpa        #编辑配置文件

         修改后

        域名结尾必须加点(.);130为服务器的主机位

         重启服务

systemctl restart named

        客户端操作

        配置与正向解析操作一致

        测试

这篇关于域名解析服务器(DNS)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/996584

相关文章

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

Python WSGI HTTP服务器Gunicorn使用详解

《PythonWSGIHTTP服务器Gunicorn使用详解》Gunicorn是Python的WSGI服务器,用于部署Flask/Django应用,性能高且稳定,支持多Worker类型与配置,可处... 目录一、什么是 Gunicorn?二、为什么需要Gunicorn?三、安装Gunicorn四、基本使用启

通过配置nginx访问服务器静态资源的过程

《通过配置nginx访问服务器静态资源的过程》文章介绍了图片存储路径设置、Nginx服务器配置及通过http://192.168.206.170:8007/a.png访问图片的方法,涵盖图片管理与服务... 目录1.图片存储路径2.nginx配置3.访问图片方式总结1.图片存储路径2.nginx配置

DNS查询的利器! linux的dig命令基本用法详解

《DNS查询的利器!linux的dig命令基本用法详解》dig命令可以查询各种类型DNS记录信息,下面我们将通过实际示例和dig命令常用参数来详细说明如何使用dig实用程序... dig(Domain Information Groper)是一款功能强大的 linux 命令行实用程序,通过查询名称服务器并输

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

SpringBoot改造MCP服务器的详细说明(StreamableHTTP 类型)

《SpringBoot改造MCP服务器的详细说明(StreamableHTTP类型)》本文介绍了SpringBoot如何实现MCPStreamableHTTP服务器,并且使用CherryStudio... 目录SpringBoot改造MCP服务器(StreamableHTTP)1 项目说明2 使用说明2.1