文章目录

  • 什么是DNS
  • 安装DNS服务
  • 安装软件包
  • 启动DNS服务
  • iptables 放行53号端口
  • 修改DNS服务的配置文件
  • 修改主配置文件
  • 设置转发器
  • 修改主域文件
  • 修改域文件
  • 测试结果
  • 修改本机DNS服务器地址
  • 通过nslookup命令测试结果


什么是DNS

把域名翻译成IP地址的软件称为域名系统,即DNS。它是一种管理名字的方法。这种方法是:分不同的组来负责各子系统的名字。系统中的每一层叫做一个域,每个域用一个点分开。所谓域名服务器(即Domain Name Server,简称Name Server)实际上就是装有域名系统的主机。它是一种能够实现名字解析(name resolution)的分层结构数据库。

centos添加域名解析A记录 centos 域名解析_linux


接下来给带大家在Centos 7下安装DNS服务器

安装DNS服务

首先要先安装DNS服务,并验证是否可以正常运行启动

安装软件包

yum install bind*

centos添加域名解析A记录 centos 域名解析_linux_02


安装完成后通过执行命令 cut -d : -f 1 /etc/passwd ,可以看到系统会多一个用户named。

centos添加域名解析A记录 centos 域名解析_服务器_03

启动DNS服务

systemctl start named.service

执行命令 ps -eaf|grep named ,可以看到DNS服务已经在运行

centos添加域名解析A记录 centos 域名解析_运维_04


执行命令 netstat -an|grep :53 ,可以看到53端口被DNS服务占用

centos添加域名解析A记录 centos 域名解析_服务器_05

iptables 放行53号端口

#放行tcp
iptables -I INPUT -p tcp --dport 53 -j ACCEPT
#放行udp
iptables -I INPUT -p udp --dport 53 -j ACCEPT
#保存配置
service iptables save

修改DNS服务的配置文件

对于BIND,需要配置的主要文件为 /etc/named.conf 。另外两个文件,/etc/named.isc-dlv.key 保存加密用的密钥,/etc/named.rfc1912.zones 扩展配置文件。

修改主配置文件

要注意在修改之前强烈建议备份原有配置文件

cp -p /etc/named.conf /etc/named.conf.bak
cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak

named.conf 文件说明:

特别提醒,如果希望局域网可以使用这个DNS服务,请删除 listen-on port 53这一行,和 listen-on-v6 port 53 这一行,以及 allow-query 这一行

centos添加域名解析A记录 centos 域名解析_服务器_06

设置转发器

当遇到域名列表里面没有的域名时,可以通过设置转发器,向设置的服务器发送查询信息

forward first;            
  #本机不能解析的转发给223.5.5.5做解析
  #first:首先转发;转发器不响应时,自行去迭代查询;only:只转发;
	forwarders  {
		223.5.5.5;
	  114.114.114.114;
	  8.8.8.8;
	 };
  dnssec-enable no;
  dnssec-validation no;

centos添加域名解析A记录 centos 域名解析_网络_07

修改主域文件

named.rfc1912.zones 文件说明:

centos添加域名解析A记录 centos 域名解析_linux_08


以上每个zone区域都是可选的,根据自己的实际需求定义即可,以上配置项是做了一个正向解析区域,一个反向解析区域。

修改域文件

定义好主配置文件后,就可以去配置区域数据文件了,通常默认存放在 /var/named目录下,每个区域数据文件对应一个DNS解析区域,文件名及内容我们自己定义

使用命令 cp -p /var/named/named.localhost /var/named/域名.zone 可以将模板复制到解析配置文件夹下,然后配置这个文件

centos添加域名解析A记录 centos 域名解析_centos添加域名解析A记录_09


举个例子:(注意必须要在尾部留有一行空行这个是不对的!)

centos添加域名解析A记录 centos 域名解析_运维_10


全部配置文件编写完成后可以使用 named-checkconf -z /etc/named.conf 命令对所有DNS相关的配置文件进行检查,如有语法错误的地方,会依次指出。

centos添加域名解析A记录 centos 域名解析_linux_11


执行 systemctl start named 启动DNS服务,通过 systemctl status named 查看运行状态

centos添加域名解析A记录 centos 域名解析_网络_12

测试结果

接下来测试结果

修改本机DNS服务器地址

配置 /etc/resolv.conf 文件 (暂时有效,如需长期有效请修改网卡配置)

nameserver 127.0.0.1

通过nslookup命令测试结果

nslookup 域名

centos添加域名解析A记录 centos 域名解析_linux_13


出现的IP如果和你配置的IP一致,证明成功。

参考文案
centOS7下DNS服务器的安装与配置CentOS 7搭建DNS服务器配置详解dns解析错误 resolvingcentos上搭建dns解析服务器