DNS简述

DNS:域名系统,应用层协议。域名和IP地址相互映射的分布式数据库,服务器端:53/udp,53/tcp

-----------------------------------------------------------------------------------------------------------------------------------------------------

DNS解析优先级: 本地hosts文件--dns,可以修改

centos系统: /etc/nsswitch.conf

 

 

根域----顶级域名---二级域名----三级域名

顶级域名:com,gov,org等                 顶级域名存储的域名是二级域名

二级域名:goole.com,baidu.com等      二级域名存储的域名是三级域名

三级域名:www.baidu.com   本质是主机

----------------------------------------------------------------------------------------------------------------------------------------------------------------

DNS查询类型:

递归查询:客户机和本地DNS服务器之间属于递归查询,客户机向DNS发出请求后,如果DNS服务器本身不能解析,则向另外的DNS服务器发出请求,得到最终的肯定或否定的结果转交给客户机。此查询的源和目标保持不变,为了查询结果只发起一次查询

迭代查询:本地DNS向其他DNS服务器的查询属于迭代查询,如果对方不能返回权威的结果,则向下一个DNS服务器再次发起查询,知道返回结果为止。此查询的源不变,但是查询的目标不断变化,为查询结果一般需要发起多次查询。

 

------------------------------------------------------------------------------------------------------------------------------------------------------------------------

DNS服务器类型

主DNS服务器:管理和维护所负责的域名解析库的服务器

从DNS服务器:从主服务器或者从服务器复制解析库副本

缓存DNS服务器(转发器)

 

各种资源记录

记录类型:A,AAAA,PTR,SOA,NS,CNAME,MX

SOA:起始授权记录;一个区域解析库有且仅有一个SOA记录,必须位于解析库的第一条记录

A:正向解析

AAAA:ipv6正向解析

PTR:反向解析

NS:标明当前区域的DNS服务器

CNAME:别名记录

MX:邮件交换器

 

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------

DNS服务器软件:bind,powerdns,dnsmasq,coredns

 

以下选择bind安装DNS服务

yum -y install bind bind-utils

 

 主配置脚本:/etc/named.conf    /etc/named.rfc1912.zones

正向解析库文件: /var/named/named.localhost
反向解析库文件: /var/named/named.loopback

根域名服務器配置:   /var/named/named.ca

注意:

一台服务器可同时为多个域名提供解析 ,必须要有根域名文件

 

主配置文件   /etc/named.conf

全局配置: options{}

日志子系统配置:logging{}

区域定义:本地能够为那些zone进行解析,就要定义那些zone

注意:

任何服务程序如果希望能通过网络被其他主机访问,至少应该就监听在一个能与外部主机通信的IP地址上

缓存DNS服务器的配置:监听外部地址即可

dnssec:设为no

 

 

 设置了114.114.114.114Dns,所以能够访问外网。将DNS设置为本地,依旧可以访问外网。这是因为dns服务器天生知道根服务器。

 

 

将其他服务器的DNS只向DNS服务器,依旧可以上网。需要修改DNS的named.conf

 

 rndc reload 或者   systemctl restart named

 

 

------------------------------------------------------------------------------------------------------------------------------------------------

搭建DNS正向主服务器,实现web服务器基于FQDN的访问

主DNS服务器:192.168.89.140  

web服务器:192.168.89.142

访问web的客户端:192.168.89.141    

 

第一步:所有服務器关闭selinux,防火墙,开启时间同步

第二步:140节点进行操作

1安装bind   ---------------yum -y install bind bind-utils

2 vim /etc/named.conf

 

3 vim /etc/named.rfc1912.zones

 

 ty.org   域      IN可写可不写       ty.org.zone可以随意命名(a.txt都行)

4   DNS区域数据库文件  cp -p /var/named/named.localhost  /var/named/ty.org.zone(a.txt)

vim /var/named/ty.org.zone

 

 master=master.ty.org.   DNS服务器

www=www.ty.org.       web服务器

5 .rndc reload

第三步:142节点配置httpd

1. yum install -y httpd && systemctl enable --now httpd

第四步: 141测试是否能够访问www.ty.org(这里是因为我将dns已经指向了192.168.89.140,httpd默认页面内容为ty)

 

 

 

 如果用户访问输入有问题,比如输入wwwwwwwwww.ty.org,ty.org无法解析,域文件配置修改为

 

 

 

 

 

----------------------------------------------------------------------------------------------------------------------------

named配置检查

named-checkconf    检查named.conf

named-checkzone ty.org /var/named/ty.org.zone     检查域文件配置

 

--------------------------------------------------------------------------------------------------------------------------------

启用DNS客户端缓存加快访问速度

yum install -y nscd

systemctl enable --now nscd

-----------------------------------------------------------------------------------------------------------------------------------

增加从DNS服务器143节点

1.yum install -y bind

2.vim /etc/named.conf

 

 3.vim /etc/named.rfc1912.zones

 

 4 .systemctl enable --now named

5.140主DNS节点关闭dns服务   rndc stop,客户端141节点访问web测试

 

但是此时无法主从同步,修改140节点配置形成主从不同   vim /var/named/ty.org.zone

 

 

 

高危:DNS默认允许从任何节点抓取数据库==================141为例抓取

 

 预防操作:主节点允许从节点抓取,从节点禁止任何节点抓取

 

 

 

 

 141抓取尝试

 

 

 

 

 

 

==========================================-=============================

子域添加,144作为子域节点。多用于异地DNS管理。

DNS父域 ,DNS主节点:  140节点

 DNS子域:144节点

父域,子域的web服务器:142节点

DNS从节点:143节点

访问web客户端:141节点

 

配置修改如下-------------------------------

1.140节点添加子域  vim /var/named/ty.org.zone  然后重启rndc

 

 2.144节点安装bind

3.144节点配置    vim /etc/named.conf

 

 

 

4 vim /etc/named.rfc1912.zones,,-----------这里的son必须和父域的数据库文件的一致

 

 

 5.vim /var/named/son.zone,--------------------重启服务rndc

 

 6 141节点测试子域

 

 

 

实现缓存DNS服务器==============================添加146节点

1.146节点安装bind

2.vim /etc/named.conf

 

 3.重启服务

 

posted @   好像认识你很久了  阅读(922)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示