Linux中DNS域名解析服务及实验

一、DNS介绍

1、DNS

是域名系统,应用层协议,是互联网的一项服务,是将域名转换成网络可以识别的IP地址,再通过IP地址访问主机。这种由文字组成的名称更容易记忆。

DNS是"域名系统"的英文缩写。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS。每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

2、DNS系统的作用

①正向解析:根据域名查找对应的ip地址

②反向解析:根据IP地址查看对应的域名

③DNS系统的分布式数据结构

3、域名结构

一层是根域

二层是顶级域也就是一级域

三层是二级域

四层是子域

五层是主机名或者三级域

4、DNS的完整过程

第一步:先去查看本机的hosts文件,如果有直接访问hosts文件里的IP地址,没有去找缓存服务器

第二步:缓存服务器有,直接反馈结果给用户,缓存没有,就要迭代查询,直接找根域服务器

第三步:由于根域服务器只能解析根,无法解析www.baidu.com但是根域服务器让你去找一级服务器。

第四步:一级域发现自己也解析不了,会让你找二级域

第五步:二级域发现这台服务器在自己的管理范围内,直接反馈结果给缓存服务器

第六步:缓存服务器再交给客户

5、迭代查询和递归查询

①迭代查询:不给结果只给相关信息,需要自己动手

②递归查询:直接反馈结果,不需要自己动手

6、打开网页要经历的过程

①先经历DNS域名解析将浏览器和服务器接口建立连接

②然后建立TCP连接经历三次握手

③然后通过http协议进行访问

④然后进行四次握手断开TCP连接

7、DNS的服务器的类型

1、缓存域服务器:

①也叫DNS高速缓存服务器

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

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

2、主域名服务器

①特定的DNS服务器,具有唯一性

②负责维护该区域内所有域名--IP地址的映射文件

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

3、从域服务器:

①也叫辅助域名服务器,对主域名服务器进行热备份

②所维护的域名 --IP地址来自主域名服务器

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

二、bind构建域名服务器

1、bind

bind时应用最广泛的DNS服务器程序

2、bind服务器端程序

主要执行文件 /usr/sbin/named

主配置文件/etc/named.conf

保存DNS解析记录的数据文件位于/var/named

3、bind控制

复制代码
systemctl [status | start | stop | restart] named.service    
#查看状态、启动、停止和重启

三、本地解析配置文件位置

文件位置:Linux hosts文件位置 /etc/hosts

windows hosts文件位置:c/windows/system32/drivers/etc/hosts

四实验:构建域名服务器正向解析

第一步:安装bind程序

第二步:修改/etc/named.conf

第三步:修改区域配置文件

第四步:修改正向区域数据文件

第五步:开启named等服务,关闭防火墙和增强防护功能,然后启动named服务,然后查看named的服务状态

第六步:在/etc/resolv.conf中修改域名地址

第七步:测试结果域名解析

五、实验:构建域名服务器反向解析

第一步:修改/etc/named.rfc1912.zone配置文件,添加反向区域配置

第二步:复制并配置反向区域数据文件

第三步:修改反向配置的数据文件

第四步:关闭防火墙重启服务后进行解析测试

六、实验:配置主从DNS服务器

第一步:修改主服务器的区域配置文件,修改正反区域配置

第二步:修改从服务器的主要配置文件

vim /etc/named.conf

第三步:修改从服务器的区域配置文件

vim /etc/named.rfc1912.zones

第四步:从服务器关闭防火墙跟安全防护系统,修改临时DNS域名地址,并重启named服务

第五步:在从服务器中查看是否自动生成了区域资源配置文件,并将主服务器的域名ip添加进去

第六步:在主服务器中添加从服务器的域名IP

第七步:进行域名解析测试

主服务器:

从服务器:

相关推荐
zx_741484817 小时前
【Linux入门】Shell 函数、正则表达式与文本处理:cut 与 awk
linux·运维·正则表达式
Zenova EdgeOS7 小时前
Linux dmesg 工业边缘实战:内核日志过滤、持久化与故障定位
linux·运维·边缘计算·工业边缘·dmesg·内核日志
金士顿7 小时前
System.Text.Json Source Generator 深度解析:为什么 Native AOT 不喜欢反射
linux·asp.net core·arm64·net·native aot
wdfk_prog8 小时前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros
做运维的阿瑞8 小时前
Python 标准库汇总:分类速览与常用模块清单
linux·运维·python
百万蹄蹄向前冲8 小时前
密码都对Node.js却连不上Linux数据库
linux·mysql
彧azz8 小时前
Linux 网络编程学习总结
linux·网络·笔记·学习·面试
浅念-9 小时前
Redis基础详解:单线程模型、String与Hash数据结构
服务器·数据库·redis·sql·mysql·nosql数据库·nosql
日常筹谋记9 小时前
自动化仓储安全防护工况评估:明治传感器AS-33C技术适配性分析
大数据·运维·创业创新·业界资讯
susplus9 小时前
【ARM 裸机开发 (IMX6ULL-mini)】GNU工具、Makefile 工程构建、链接脚本详解|C 语言点灯 + 蜂鸣器驱动
linux·arm·makefile·imx6ull