Linux案例:DNS服务器配置
Linux案例:DNS服务器配置
实验一:正向解析
服务端配置:
[root@server ~]# setenforce 0
[root@server ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.70.131/24 ipv4.gateway 192.168.70.2 ipv4.dns 114.114.114.114
[root@server ~]# nmcli c reload
[root@server ~]# nmcli c u ens160
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/3)
[root@server ~]# vim /etc/named.conf
[root@server ~]# vim /etc/named.rfc1912.zones
[root@server ~]# cd /var/named
[root@server named]# ls
192.168.70.arpa data dynamic named.ca named.empty named.localhost named.loopback named.openlab.com openlab.com.zone slaves
[root@server named]# cp -a named.localhost openlab.com.zone
cp:是否覆盖'openlab.com.zone'?
[root@server named]# vim openlab.com.zone
[root@server named]# systemctl restart named
客户端配置
[root@cilent ~]# setenforce 0
[root@cilent ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.70.132/24 ipv4.gateway 192.168.70.2 ipv4.dns 114.114.114.114
[root@cilent ~]# nmcli c reload
[root@cilent ~]# nmcli c u ens160
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)
[root@cilent ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens160
[root@cilent ~]# nmcli c reload
[root@cilent ~]# nmcli c u ens160
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)
[root@cilent ~]# nslookup www.openlab.com
Server: 192.168.70.131
Address: 192.168.70.131#53Name: www.openlab.com
Address: 192.168.70.131[root@cilent ~]#
[root@cilent ~]# nslookup
> bbs.openlab.com
Server: 192.168.70.131
Address: 192.168.70.131#53Name: bbs.openlab.com
Address: 192.168.70.131
>
[root@cilent ~]# dig www.openlab.com; <<>> DiG 9.16.23-RH <<>> www.openlab.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14614
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; COOKIE: 7a5edfca7630180d010000006725a90878cd979838ac7c70 (good)
;; QUESTION SECTION:
;www.openlab.com. IN A;; ANSWER SECTION:
www.openlab.com. 86400 IN A 192.168.70.131;; Query time: 3 msec
;; SERVER: 192.168.70.131#53(192.168.70.131)
;; WHEN: Sat Nov 02 12:22:30 CST 2024
;; MSG SIZE rcvd: 88
实验二:反向解析
服务端配置
[root@server ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.48.130/24 ipv4.gateway 192.168.48.2 ipv4.dns 114.114.114.114
[root@server ~]# nmcli c reload
[root@server ~]# nmcli c up ens160
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/2)
[root@server ~]# vim /etc/named.conf
# 需改2行listen-on port 53 { any; }; # any为允许所有主机allow-query { 192.168.48.131; }; # 此处也可以写为IP地址
[root@server ~]# vim /etc/named.conf
[root@server ~]# vim /etc/named.rfc1912.zones
[root@server ~]# cd /var/named
[root@server named]# ls
192.168.70.arpa data dynamic named.ca named.empty named.localhost named.loopback named.openlab.com openlab.com.zone slaves
[root@server named]# cp -a named.localhost openlab.com.zone
cp:是否覆盖'openlab.com.zone'?
[root@server named]# vim openlab.com.zone
[root@server named]# systemctl restart named
[root@server named]# vim /etc/named.conf
[root@server named]# vim /etc/named.rfc1912.zones
[root@server named]# ls
192.168.70.arpa data dynamic named.ca named.empty named.localhost named.loopback named.openlab.com openlab.com.zone slaves
[root@server named]# cp -a named.loopback 192.168.70.arpa
cp:是否覆盖'192.168.70.arpa'?
[root@server named]# vim 192.168.70.arpa
[root@server named]# systemctl restart named
客户端配置
[root@cilent ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.48.131/24 ipv4.gateway 192.168.48.2 ipv4.dns 192.168.48.130 # 注意,此处dns改为服务端的IP地址,后续就不用再单独修改
[root@cilent ~]# nmcli c reload
[root@cilent ~]# nmcli c up ens160
[root@cilent ~]# nslookup 192.168.70.131
131.70.168.192.in-addr.arpa name = www.openlab.com.
131.70.168.192.in-addr.arpa name = ftp.openlab.com.
131.70.168.192.in-addr.arpa name = ns.openlab.com.
实验三:主从DNS服务器
主服务端
[root@server named]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.70.131/24 ipv4.gateway 192.168.70.2 ipv4.dns 192.168.70.131
[root@server named]# nmcli c reload
[root@server named]# nmcli c u ens160
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/4)
[root@server named]# vim /etc/named.conf
[root@server named]# vim /etc/named.rfc1912.zones
[root@server named]# ls
192.168.70.arpa data dynamic named.ca named.empty named.localhost named.loopback named.openlab.com openlab.com.zone slaves
[root@server named]# cp -a named.localhost openlab.com.zone
cp:是否覆盖'openlab.com.zone'?
[root@server named]# vim openlab.com.zone
[root@server named]# cp -a named.loopback 192.168.70.arpa
cp:是否覆盖'192.168.70.arpa'?
[root@server named]# vim 192.168.70.arpa
[root@server named]# systemctl restart named
从服务端
[root@cilent ~]# vim /etc/named.conf
[root@cilent ~]# vim /etc/named.rfc1912.zones
[root@cilent ~]# cd /var/named/slaves/
[root@cilent slaves]# ls
openlab.com.zone
[root@cilent slaves]# systemctl start named
[root@cilent slaves]# ls
192.168.70.arpa openlab.com.zone
[root@cilent slaves]# nslookup www.openlab.com
Server: 192.168.70.131
Address: 192.168.70.131#53Name: www.openlab.com
Address: 192.168.70.131[root@cilent slaves]# nslookup 192.168.70.131
131.70.168.192.in-addr.arpa name = ftp.openlab.com.
131.70.168.192.in-addr.arpa name = bbs.openlab.com.
131.70.168.192.in-addr.arpa name = ns.openlab.com.
131.70.168.192.in-addr.arpa name = www.openlab.com.[root@cilent slaves]# dig @192.168.70.131 www.openlab.com; <<>> DiG 9.16.23-RH <<>> @192.168.70.131 www.openlab.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47991
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; COOKIE: bfa413a2fb854884010000006725b78df48699372a4e885e (good)
;; QUESTION SECTION:
;www.openlab.com. IN A;; ANSWER SECTION:
www.openlab.com. 86400 IN A 192.168.70.131;; Query time: 4 msec
;; SERVER: 192.168.70.131#53(192.168.70.131)
;; WHEN: Sat Nov 02 13:24:27 CST 2024
;; MSG SIZE rcvd: 88
相关文章:

Linux案例:DNS服务器配置
Linux案例:DNS服务器配置 实验一:正向解析 服务端配置: [rootserver ~]# setenforce 0 [rootserver ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.70.131/24 ipv4.gateway 192.168.70.2 ipv4.dns 114.114.114.11…...
【Python】__getitem__()方法
getitem() 方法介绍 __getitem__ 方法是 Python 中的一个特殊方法(也被称为魔术方法或特殊方法),用于在类中实现索引访问对象元素的操作。这个方法允许对象实现类似于列表、字典等容器类型的索引操作。当自定义类中定义了 __getitem__ 方法时…...

《Atomic Picnic》进不去游戏解决方法
Atomic Picnic有时候会遇到进不去游戏的情况,这可能是由多种原因造成的,玩家可以采取很多解决方法,比如检查电脑配置、更新系统和驱动或验证游戏文件。 Atomic Picnic进不去游戏怎么办 检查电脑配置 查看自己的电脑配置是否达到了游戏的要求…...

学习日志007--python函数 学完再练习练
函数小练习 一、函数的概念 1.定义 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。 2.作用 函数能提高应用的模块性,和代码的重复利用率 3.定义 函数代码块以 def 关键词开头,后接函数标识符…...

DOM操作和事件监听综合练习——轮播图
下面制作一个如下图所示的轮播图(按Enter键可以控制轮播的开启和关闭,或者点击按钮“第几张”即可跳转到第几张): 下面是其HTML和CSS代码(还没有设置轮播): <!DOCTYPE html> <html …...

nodejs:下载,安装,系统环境配置,更换镜像
下载 地址:https://nodejs.org/zh-cn/download/prebuilt-installer 安装包 开始安装 安装完成 配置环境变量 将原来的用户变量-> Path D:\nodejs\node_global 【系统变量】 添加Path–>变量名:NODE_PATH-> 变量值:D: \…...

【Django】视图函数
【Django】视图函数 视图函数的本质是Python中的函数,视图函数负责处理用户的请求并返回响应,该响应可以是网页的HTML内容、重定向、404错误、XML文档、图像或者任何东西,一般在应用中的views.py编写,示例代码如下: …...

MySQL查询-补充
数据准备: -- 部门表 create table dept(deptno int primary key, -- 部门编号 主键:唯一,非空dname varchar(14), -- 部门名称loc varchar(13) -- 部门地址 );insert into dept values (10,accounting,n…...
【Python Tips】多个条件判断——一种更加简洁清晰的写法
一、引言 在python写条件判断 if 语句时,有时会遇到多种条件的真假判断考虑,比如要同时考虑A和B两个变量的True or False,只有当两者都为真,或都为假,或任意为真为假,再继续处理。此时如果用 if,…...

【Vue】简易博客项目跟做
项目框架搭建 1.使用vue create快速搭建vue项目 2.使用VC Code打开新生成的项目 端口号简单配置 修改vue.config.js文件,内容修改如下 所需库安装 npm install vue-resource --save --no-fund npm install vue-router3 --save --no-fund npm install axios --save …...
【HarmonyOS】PixelMap转化为Uri
【HarmonyOS】PixelMap转化为Uri 问题背景 鸿蒙中的PixelMap类型,其实类似于Android和IOS中的bitmap,是对图片数据信息进行描述的一种逻辑运算使用的图片类型。 而鸿蒙中的Uri类型,本质其实是带file头的文件存储地址,是用来指向…...
【架构论文-2】架构设计中存在的问题和改进方向
一、性能优化相关 当前情况 在高负载情况下,系统的响应时间出现了一定程度的延迟。特别是在业务高峰期,大量并发请求导致部分关键业务模块的处理效率降低,影响了用户体验。改进方向 计划引入性能分析工具对系统进行全面的性能剖析࿰…...
go语言中的结构体含义和用法详解
在Go语言中,结构体(struct)是一种聚合数据类型,可以将多个不同类型的数据组合成一个更复杂的类型。结构体类似于面向对象编程中的“类”,但是Go语言没有类和继承的概念,而是通过结构体和接口实现面向对象编程的特性。 1. 结构体的定义 结构体是一组字段(field)的集合…...
985研一学习日记 - 2024.11.8
一个人内耗,说明他活在过去;一个人焦虑,说明他活在未来。只有当一个人平静时,他才活在现在。 日常 1、起床 2、健身 3、LeetCode刷了2题 买卖股票的最佳时机 将最大利润拆分为每天的利润之和,仅仅收集每天的正利润…...

编写一个基于React的聊天室
前言 此前已经编写了一版后端的im,此次就用其作为服务端,可查看参考资料1 代码 使用WebStorm创建React项目 安装依赖包 PS C:\learn-demo\front\chatroom> npm installadded 183 packages, and audited 184 packages in 16s43 packages are looki…...
[前端]NodeJS常见面试题目
什么是非阻塞 I/O? Node.js 如何实现非阻塞 I/O? 非阻塞 I/O 是一种编程模式,它允许 I/O 操作(如读取文件、网络请求等)在执行时不阻塞程序的其余部分。换句话说,当一个 I/O 操作发起后,程序可以立即继续执行其他任…...
【实测可用】Sublime Text4 4180 windows 已测可用
------------------测试时间2024年11月7日------------------- 打开浏览器进入网站: 点击进入修改网站打开sublime text4安装目录选择文件sublime_text.exe搜索80 79 05 00 0f 94 c2更改为c6 41 05 01 b2 00 90(第一个匹配到的)保存文件命名为sublime_text.exe并…...
JAVA日期加减运算 JsonObject 转换对象List
1.用java.util.Calender来实现 Calendar calendarCalendar.getInstance(); calendar.setTime(new Date());System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)1);//让日期加1 Sy…...
在 PostgreSQL 中,重建索引可以通过 `REINDEX` 命令来完成
在 PostgreSQL 中,重建索引 在 PostgreSQL 中,重建索引可以通过 REINDEX 命令来完成。 重建索引的主要目的是提高查询性能,尤其是在数据频繁更新的情况下。以下是重建索引的基本语法和示例: 基本语法 REINDEX INDEX index_name…...
SQL相关常见的面试题
SQL(Structured Query Language)是数据库管理中不可或缺的一部分,因此在技术面试中经常会被问到与 SQL 相关的问题。以下是一些常见的 SQL 面试题及其答案。 基础概念 什么是 SQL? SQL 是一种用于管理和处理关系型数据库的标准语…...

VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...

Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...

NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...

中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...

嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...