安装DNS

news/2024/10/11 6:03:10/

在 CentOS 7 上安装并配置 BIND 以实现 DNS 的正向和反向解析可以按照以下步骤进行:

安装 BIND

打开终端并运行以下命令来安装 BIND 及其工具:

yum install bind bind-utils -y

配置 BIND

  1. 编辑主配置文件:

使用文本编辑器打开 BIND 的主配置文件/etc/named.conf。如果没有此文件,你可能需要先检查 BIND 是否正确安装:

vim /etc/named.conf

在文件中,确保 BIND 监听在合适的 IP 地址上(通常为 localhost 或服务器的 IP 地址):

options {listen-on port 53 { any; };directory "/var/named";dump-file "/var/named/data/cache_dump.db";statistics-file "/var/named/data/named_stats.txt";memstatistics-file "/var/named/data/named_mem_stats.txt";allow-query     { any; };
};
  1. 配置正向和反向区域:

在/etc/named.conf中添加以下内容:

zone "example.com" IN {type master;file "example.com.zone";allow-update { none; };
};zone "254.168.192.in-addr.arpa" IN {type master;file "192.168.254.zone";allow-update { none; };
};
  1. 创建区域文件:

进入/var/named目录并创建正向和反向区域文件。

vim /var/named/example.com.zone

添加以下内容作为正向区域文件(example.com.zone):

$TTL 86400
@   IN  SOA ns1.example.com. admin.example.com. (2023101001 ; Serial3600       ; Refresh1800       ; Retry604800     ; Expire86400 )    ; Minimum TTL
;
@       IN  NS      ns1.example.com.
ns1     IN  A       192.168.254.150
www     IN  A       192.168.254.150

然后创建反向区域文件:

vim /var/named/192.168.254.zone

添加以下内容作为反向区域文件(192.168.254.zone):

$TTL 86400
@   IN  SOA ns1.example.com. admin.example.com. (2023101001 ; Serial3600       ; Refresh1800       ; Retry604800     ; Expire86400 )    ; Minimum TTL
;
@       IN  NS      ns1.example.com.
150       IN  PTR     ns1.example.com.
150       IN  PTR     www.example.com.

检查并启动服务

  1. 检查配置文件的正确性:

使用以下命令检查主配置文件和区域文件的语法:

named-checkconf /etc/named.conf
named-checkzone example.com /var/named/example.com.zone
named-checkzone 254.168.192.in-addr.arpa /var/named/192.168.254.zone
  1. 修改文件所属组和用户
chown root:named /var/named/example.com.zone
chown root:named /var/named/192.168.254.zone
  1. 启动并启用 BIND 服务:

首次启动 BIND 服务,并使其在系统启动时启动:

systemctl enable named --now

防火墙设置

  1. 配置防火墙以允许 DNS 流量:

使用以下命令在 CentOS 7 上配置防火墙以允许通过 DNS 的流量:

firewall-cmd --permanent --add-service=dns
firewall-cmd --reload

测试正向解析

  1. 测试域名到 IP 地址的解析:

打开终端并运行以下命令,假设你要解析www.example.com:

nslookup www.example.com

如果 DNS 服务器配置正确,你应该看到类似以下的输出:

测试反向解析

  1. 测试 IP 地址到域名的反向解析:

运行以下命令来测试 IP 地址192.168.254.150是否正确解析到www.example.com:

nslookup 192.168.254.150

你应该看到类似以下的输出:

处理常见问题

  • 无法解析:如果出现无法解析的错误,确保你的 named 服务正在运行,防火墙规则正确设置,并且你的区域文件没有语法错误。

检查服务状态:

 systemctl status named
  • 检查日志:如果nslookup未返回预期的结果,请查看 DNS 日志文件以获取更多调试信息,通常位于/var/log/messages:
tail -f /var/log/messages

http://www.ppmy.cn/news/1537299.html

相关文章

Vue使用@别名替换后端ip地址

1. 安装 types/node types/node 包允许您在TypeScript项目中使用Node.js的核心模块和API,并提供了对它们的类型检查和智能提示的支持。 npm install types/node --save-dev 比如安装之后,就可以导入nodejs的 path模块,在下面代码 import path…

MindSearch 部署到Github Codespace 和 Hugging Face Space

conda init后需要重开终端,不然一键复制会导致后续pip install会安装错环境 还是报错 ImportError: cannot import name AutoRegister from class_registry (/opt/conda/envs/mindsearch/lib/python3.10/site-packages/class_registry/__init__.py)pip install --…

论文翻译 | Fairness-guided Few-shot Prompting for LargeLanguage Models

摘要 大型语言模型已经显示出令人惊讶的执行上下文学习的能力,也就是说,这些模型可以通过对由几个输入输出示例构建的提示进行条件反射,直接应用于解决大量下游任务。然而,先前的研究表明,由于训练示例、示例顺序和提示…

按分类调用标签 调用指定分类下的TAG

按分类调用标签 调用指定分类下的TAG <?php query_posts(category_namenews); if (have_posts()) : while (have_posts()) : the_post(); if( get_the_tag_list() ){ echo $posttags get_the_tag_list(<li class"jquery">,</li><li>,</li…

第七章 RabbitMQ之交换机

目录 一、介绍 二、Fanout Exchange 2.1. 案例演示 2.1.1. 创建SpringBoot工程 2.1.2. 父工程pom依赖 2.1.3. 生产者pom依赖 2.1.4. 生产者配置文件 2.1.5. 生产者核心代码 2.1.6. 消费者RabbitMQConfig 2.1.7. 消费者pom依赖 2.1.8. 消费者配置文件 2.1.9. 消费者…

分布式 ID

背景 在复杂分布式系统中&#xff0c;往往需要对大量的数据和消息进行唯一标识。随着数据日渐增长&#xff0c;对数据分库分表后也需要有一个唯一ID来标识一条数据或消息&#xff0c;数据库的自增 ID 显然不能满足需求&#xff1b;此时一个能够生成全局唯一 ID 的系统是非常必…

小猿口算脚本

实现原理&#xff1a;安卓adb截图传到电脑&#xff0c;然后用python裁剪获得两张数字图片&#xff0c;使用ddddocr识别数字&#xff0c;比较大小&#xff0c;再用adb命令模拟安卓手势实现>< import os import ddddocr from time import sleep from PIL import Imagedef …

springboot 前后端处理日志

为了实现一个高效且合理的日志记录方案&#xff0c;我们需要在系统架构层面进行细致规划。在某些情况下&#xff0c;一个前端页面可能会调用多个辅助接口来完成整个业务流程&#xff0c;而并非所有这些接口的交互都需要被记录到日志中。为了避免不必要的日志开销&#xff0c;并…