当前位置: 首页 > news >正文

DNS实验

DNS原理

  1. 客户端发起请求:客户端向本地 DNS 服务器发送域名解析请求,这是流程的起始点。
  2. 本地 DNS 服务器查询根域名服务器:若本地 DNS 服务器缓存中无对应记录,它向根域名服务器发起查询,根域名服务器是 DNS 系统顶层,掌握顶级域名服务器信息。
  3. 根域名服务器响应:根域名服务器告知本地 DNS 服务器,负责该域名顶级域名服务器的地址。
  4. 本地 DNS 服务器查询顶级域名服务器:本地 DNS 服务器向顶级域名服务器发送查询请求,顶级域名服务器管理如.com、.org 等顶级域名下的域名信息。
  5. 顶级域名服务器响应:顶级域名服务器告知本地 DNS 服务器,负责该域名的权威域名服务器地址。
  6. 本地 DNS 服务器查询权威域名服务器:本地 DNS 服务器向权威域名服务器查询,权威域名服务器存储具体域名的解析记录。
  7. 权威域名服务器响应:权威域名服务器将域名对应的 IP 地址返回给本地 DNS 服务器。
  8. 本地 DNS 服务器响应客户端:本地 DNS 服务器将获取的 IP 地址返回给客户端,客户端就能通过 IP 访问对应网络资源。

此外,客户端和本地 DNS 服务器间虚线关联本地 DNS 缓存、/etc/hosts 文件 ,本地 DNS 服务器配置文件是 /etc/resolv.conf ,这些在解析中起到辅助作用。

  1. 主dns要完成dns解析:192.168.164.128

[root@localhost ~]# yum install bind -y

[root@localhost ~]# systemctl  start named

named:它是 BIND(Berkeley Internet Name Domain)域名服务器软件的守护进程。
[root@localhost ~]# vim /etc/named.conf
named.conf 是 BIND(Berkeley Internet Name Domain)软件的主配置文件,BIND 是在互联网上广泛使用的 DN(Domain Name System)服务器软件,named.conf 文件用于控制 named 守护进程的行为

[root@localhost ~]# vim /etc/named.conf

1. options 部分

  • listen-on port 53 { any; };
    • 作用:指定 named 服务监听在 TCP 和 UDP 的 53 端口,并且监听所有本地 IP 地址。这意味着该 DNS 服务器可以接收来自任何网络接口的 DNS 请求。
  • directory "/var/named";
    • 作用:定义区域文件(记录域名相关信息的文件)的存储目录。BIND 会在这个目录下查找和存放相关的区域文件。需要确保 named 服务对该目录有读写权限。
  • allow-query { any; };
    • 作用:允许任何客户端发起 DNS 查询请求。
  • allow-transfer { 192.168.164.129; };
    • 作用:允许指定的 IP 地址(这里是 192.168.164.129 )进行区域传送。区域传送是指主 DNS 服务器将区域数据复制给从 DNS 服务器的过程。如果设置不当,可能会导致 DNS 数据泄露,所以要谨慎设置,只允许可信的从 DNS 服务器 IP 进行区域传送 。

2. 区域定义部分

  • zone "zhang.com." IN {
    • 作用:定义了一个名为 zhang.com. 的 DNS 区域,类型为 master(主区域) ,意味着这台服务器是该区域的主 DNS 服务器,负责维护和管理这个区域的 DNS 记录。
    • file "named.zhang.com";:指定该区域对应的区域文件名为 named.zhang.com ,这个文件应存放在前面 options 中定义的 directory 目录(/var/named )下,里面应包含 zhang.com 这个区域的具体 DNS 记录,如 A 记录(域名到 IP 地址映射)、MX 记录(邮件交换记录)等 。目前缺少具体的区域文件内容,需要创建并填充相关记录。
  • zone "164.168.192.in-addr.arpa" IN {
    • 作用:这是一个反向解析区域定义,in-addr.arpa 是用于 IPv4 反向地址解析的特殊域名。类型同样为 master 。反向解析是通过 IP 地址查询对应的域名,对于网络管理和安全审计等有重要作用。
    • file "named.192.168.164.zone";:指定该反向解析区域对应的区域文件 。

[root@localhost~]#cp -a /var/named/named.localhost /var/named/named.zhang.com

[root@localhost~]#cp -a /var/named/named.localhost /var/named/named.192.168.138.zone

vim  /var/named/named.zhang.com

vim  /var/named/named.192.168.164.zone

[root@localhost ~]# systemctl restart named

Job for named.service failed because the control process exited with error code.

See "systemctl status named.service" and "journalctl -xeu named.service" for details.

[root@localhost ~]# systemctl stop firewalld

从:192.168.164.129

[root@localhost ~]#  yum  install bind  -y

[root@localhost ~]# systemctl  start named

[root@localhost ~]# vim /etc/named.conf

options {

        listen-on port 53 { any; };

        directory       "/var/named";

        allow-query     { any; };

}

zone "zhang.com." IN {

type slave;

masters { 192.168.164.128; };
file “slaves/named.zhang.com”;};

zone "164.168.192.in-addr.arpa" IN {

 type slave;

masters { 192.168.164.128; };
file “slaves/named.192.168.164.zone”;

};

[root@localhost ~]# systemctl  restart named

[root@localhost ~]# systemctl stop firewalld

测试:

C:\Users\Legend>nslookup xixi.zhang.com 192.168.164.128

C:\Users\Legend>nslookup xixi.zhang.com 192.168.164.129

[root@localhost ~]# host xixi.zhang.com 192.168.164.128

[root@localhost ~]# host xixi.zhang.com 192.168.164.129

---------------增量

增量同步:

1、主:

tep1:往资源文件添加一行新的解析记录,(/var/named/named.zhang.com

和/var/named/named.192.168.164.zone )

tep2:序列号+1

tep3:[root@localhost ~]# systemctl restart named

2、从

手动增量同步

[root@localhost ~]# rndc refresh zhang.com

[root@localhost ~]# rndc refresh 164.168.192.in-addr.arpa

测试:

C:\Users\Legend>nslookup xixi.zhang.com 192.168.164.128

C:\Users\Legend>nslookup xixi.zhang.com 192.168.164.129

[root@localhost ~]# host xixi.zhang.com 192.168.164.128

[root@localhost ~]# host xixi.zhang.com 192.168.164.129

相关文章:

  • STM32F407使用ESP8266实现阿里云OTA(中)
  • Python学习之路(五)-接口API
  • Java Thread类深度解析:构造方法与核心方法全攻略
  • 运算符重载 (Operator Overloading)
  • RPCRT4!NDRSContextUnmarshall2函数分析
  • IEEE综述 | 车道拓扑推理20年演进:从程序化建模到车载传感器
  • 什么是CMMI认证?CMMI评估内容?CMMI认证能带来哪些好处?
  • 通过4种方法来重置UOS操作系统中的用户密码
  • 4.3 工具调用与外部系统集成:API调用、MCP(模型上下文协议)、A2A、数据库查询与信息检索的实现
  • 简易学生成绩管理系统(C语言)
  • 动手试一试 Spring Security入门
  • 服务器上安装node
  • Ubuntu服务器上如何监控Oracle数据库
  • JCP官方定义的Java技术体系组成部分详解
  • 操作系统---经典同步问题
  • 高功率激光输出稳定性不足?OAS 光学软件来攻克
  • 【Python网络爬虫实战指南】从数据采集到反反爬策略
  • ActiveMQ 快速上手:安装配置与基础通信实践(一)
  • HTB - BigBang靶机记录
  • 【MySQL数据库】表的增删改查
  • 光线传媒:正与部分重点地区洽谈主题乐园合作,首款3A游戏预计三年左右推出
  • 陕西全省公开征集涉企行政执法问题线索,切实减轻企业负担
  • 外交部回应菲律宾涉仁爱礁言论:菲方7轮运补均提前通报中方
  • 世卫发布预防少女怀孕新指南,呼吁终止童婚、延长女孩受教育时间
  • 特朗普激发加拿大爱国热情:大选提前投票人数创纪录,魁北克分离情绪被冲淡
  • 搜索市场战火延伸:OpenAI虎视眈眈,欲收购谷歌浏览器