实例:
假设某单位所在的域“gztzy. org"内有三台主机,主机名分别为:jwc. gztzy.org,yds. gztzy.org和 cys.gztzy.org。其中 DNS服务器的地址为192.168.1.3。三台主机的IP地址为192.168.1.4,192.168.1.5和192.168.1.6。现要求 DNS服务器 dns.
gztzy.org可以解析三台主机名和IP地址的对应关系。
分析:根据前面的操作,首先建立主配置文件,设置可以解析的gztzy.org区域。然后建立“gztzy. org"区域文件,并在区域文件中设置SOA、NS 以及A资源记录。最后配置客户端。具体步骤如下:
**

一、配置DNS服务器的静态IP地址

**

[root@localhost 桌面]# vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
[root@localhost 桌面]# nmtui
[root@localhost 桌面]# systemctl restart network
[root@localhost 桌面]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.1.3  netmask 255.255.255.0  broadcast 192.168.1.255inet6 fe80::20c:29ff:fe80:3fb8  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:80:3f:b8  txqueuelen 1000  (Ethernet)RX packets 166  bytes 15574 (15.2 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 275  bytes 29706 (29.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 0  (Local Loopback)RX packets 539  bytes 48368 (47.2 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 539  bytes 48368 (47.2 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[root@localhost Desktop]# df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   38G  2.9G   35G   8% /
devtmpfs               905M     0  905M   0% /dev
tmpfs                  914M  140K  914M   1% /dev/shm
tmpfs                  914M  8.9M  905M   1% /run
tmpfs                  914M     0  914M   0% /sys/fs/cgroup
/dev/sda1              497M  119M  379M  24% /boot
/dev/sr0               3.5G  3.5G     0 100% /run/media/root/RHEL-7.0 Server.x86_64
[root@localhost Desktop]# mkdir /mnt/cdrom && mount /dev/sr0 /mnt/cdrom
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost Desktop]# vim /etc/yum.repos.d/a.repo
[a]
name=welcome to redhatroom
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=0
[root@localhost Desktop]# yum install -y bind-chroot.x86_64
[root@localhost Desktop]# systemctl status named
named.service - Berkeley Internet Name Domain (DNS)Loaded: loaded (/usr/lib/systemd/system/named.service; disabled)Active: inactive (dead)[root@localhost Desktop]# systemctl start named
[root@localhost Desktop]# systemctl status named
named.service - Berkeley Internet Name Domain (DNS)Loaded: loaded (/usr/lib/systemd/system/named.service; disabled)Active: active (running) since Thu 2022-11-03 02:26:41 EDT; 1s agoProcess: 14259 ExecStart=/usr/sbin/named -u named $OPTIONS (code=exited, status=0/SUCCESS)Process: 14258 ExecStartPre=/usr/sbin/named-checkconf -z /etc/named.conf (code=exited, status=0/SUCCESS)Main PID: 14261 (named)CGroup: /system.slice/named.service└─14261 /usr/sbin/named -u named

在Linux系统中,bind服务程序的名称为named。首先需要在/etc目录中找到该服务程序的主配置文件,然后把第11行和第19行的地址均修改为any,分别表示服务器上的所有IP地址均可提供DNS域名解析服务,以及允许所有人对本服务器发送DNS查询请求。

主配置文件(/etc/named.conf):只有59行,而且在去除注释信息和空行之后,实际有效的参数仅有30行左右,这些参数用来定义bind服务程序的运行。

区域配置文件(/etc/named.rfc1912.zones):用来保存域名和IP地址对应关系的所在位置。类似于图书的目录,对应着每个域和相应IP地址所在的具体位置,当需要查看或修改时,可根据这个位置找到相关文件。

数据配置文件目录(/var/named):该目录用来保存域名和IP地址真实对应关系的数据配置文件。

[root@localhost named]# vim /etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//options {listen-on port 53 { any; };listen-on-v6 port 53 { ::1; };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、正向解析实现

[root@localhost named]# vim /etc/named.rfc1912.zones
zone "gztzy.org" IN {type master;file "gztzy.org";allow-update { none; };
};
[root@localhost named]# cd /var/named/
[root@localhost named]# ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@localhost named]# cp -a named.localhost gztzy.org
[root@localhost named]# vim gztzy.org
$TTL 1D #生存周期为1天
@ IN SOA gztzy.org. root.gztzy.org. (
#授权信息开始: #DNS区域的地址 #域名管理员的邮箱(不要用@符号)
0 ; serial #更新序列号
1D ; refresh #更新时间
1H ; retry #重试延时
1W ; expire #失效时间
3H ) ; minimum #无效解析记录的缓存时间
NS dns.gztzy.org. #域名服务器记录
dns IN A 192.168.1.3 #地址记录( dns.gztzy.org.)
jwc IN A 192.168.1.4 #地址记录( jwc.gztzy.org.)
yds IN A 192.168.1.5 #地址记录( yds.gztzy.org.)
cys IN A 192.168.1.6 #地址记录( cys.gztzy.org.)

在解析文件中,A记录类型表示将域名指向一个IPv4地址,而AAAA表示将域名指向一个IPv6地址。此外,还有8种记录类型.:

记录类型 作用
A 将域名指向一个IPV4地址
CNAME 将域名指向另外一个域名
AAAA 将域名指向一个IPV6地址
NS 将子域名指定其他DNS服务器解析
MX 将域名指向邮件服务器地址
SRV 记录提供特定的服务的服务器
TXT 文本内容一般为512字节,常作为反垃圾邮件的SPF记录
CAA CA证书办法机构授权校验
显性URL 将域名重定向到另外一个地址
隐性URL 与显性URL类型,但是会隐藏真实目标地址
[root@localhost named]# named-checkconf             // 检查主配置文件语法或参数的错误。
[root@localhost named]# systemctl restart named
[root@localhost named]# systemctl status named
named.service - Berkeley Internet Name Domain (DNS)Loaded: loaded (/usr/lib/systemd/system/named.service; disabled)Active: active (running) since 一 2022-10-24 15:05:15 CST; 4s agoProcess: 46529 ExecStop=/bin/sh -c /usr/sbin/rndc stop > /dev/null 2>&1 || /bin/kill -TERM $MAINPID (code=exited, status=0/SUCCESS)Process: 45686 ExecReload=/bin/sh -c /usr/sbin/rndc reload > /dev/null 2>&1 || /bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)Process: 46539 ExecStart=/usr/sbin/named -u named $OPTIONS (code=exited, status=0/SUCCESS)Process: 46537 ExecStartPre=/usr/sbin/named-checkconf -z /etc/named.conf (code=exited, status=0/SUCCESS)Main PID: 46543 (named)CGroup: /system.slice/named.service└─46543 /usr/sbin/named -u named
[root@localhost named]# nslookup
> jwc.gztzy.org
Server:     192.168.1.3
Address:    192.168.1.3#53Name: jwc.gztzy.org
Address: 192.168.1.4
> yds.gztzy.org
Server:     192.168.1.3
Address:    192.168.1.3#53Name: yds.gztzy.org
Address: 192.168.1.5
> cys.gztzy.org
Server:     192.168.1.3
Address:    192.168.1.3#53Name: cys.gztzy.org
Address: 192.168.1.6
>

2、反向解析实现

编辑区域配置文件。反向解析是把IP地址解析成域名格式,因此在定义zone(区域)时应该要把IP地址反写,比如原来是192.168.1.0,反写后应该就是1.168.192,而且只需写出IP地址的网络位即可。把下列参数添加至正向解析参数的后面。

[root@localhost named]# vim /etc/named.rfc1912.zones
zone "gztzy.org" IN {type master;file "gztzy.org";allow-update { none; };
};
zone "1.168.192.in-addr.arpa" IN {type master;file "192.168.1.arpa";allow-update { none; };
};
[root@localhost named]# ls
data  dynamic  gztzy.org  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@localhost named]# cp -a named.loopback 192.168.1.arpa
[root@localhost named]# vim 192.168.1.arpa
[root@localhost named]# named-checkconf
[root@localhost named]# systemctl restart named
[root@localhost named]# systemctl status named
named.service - Berkeley Internet Name Domain (DNS)Loaded: loaded (/usr/lib/systemd/system/named.service; disabled)Active: active (running) since 一 2022-10-24 15:16:07 CST; 4s agoProcess: 46787 ExecStop=/bin/sh -c /usr/sbin/rndc stop > /dev/null 2>&1 || /bin/kill -TERM $MAINPID (code=exited, status=0/SUCCESS)Process: 45686 ExecReload=/bin/sh -c /usr/sbin/rndc reload > /dev/null 2>&1 || /bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)Process: 46797 ExecStart=/usr/sbin/named -u named $OPTIONS (code=exited, status=0/SUCCESS)Process: 46796 ExecStartPre=/usr/sbin/named-checkconf -z /etc/named.conf (code=exited, status=0/SUCCESS)Main PID: 46799 (named)CGroup: /system.slice/named.service└─46799 /usr/sbin/named -u named


检查测试结果

[root@localhost named]# nslookup
> 192.168.1.3
Server:     192.168.1.3
Address:    192.168.1.3#533.1.168.192.in-addr.arpa  name = dns.gztzy.org.
> 192.168.1.4
Server:     192.168.1.3
Address:    192.168.1.3#534.1.168.192.in-addr.arpa  name = jwc.gztzy.org.
> 192.168.1.5
Server:     192.168.1.3
Address:    192.168.1.3#535.1.168.192.in-addr.arpa  name = yds.gztzy.org.
> 192.168.1.6
Server:     192.168.1.3
Address:    192.168.1.3#536.1.168.192.in-addr.arpa  name = cys.gztzy.org.
> exit

二、部署从服务器

作为重要的互联网基础设施服务,保证DNS域名解析服务的正常运转至关重要,只有这样才能提供稳定、快速且不间断的域名查询服务。在DNS域名解析服务中,从服务器可以从主服务器上获取指定的区域数据文件,从而起到备份解析记录与负载均衡的作用。因此,通过部署从服务器不仅可以减轻主服务器的负载压力,还可以提升用户的查询效率。

应用案例
为ip地址为192.168.1.3的DNS服务器配置从服务器,地址为192.168.1.20。
第1步:在主服务器的区域配置文件中允许该从服务器的更新请求,即修改allow-update {允许更新区域信息的主机地址;};参数,然后重启主服务器的DNS服务程序。

[root@localhost named]# vim /etc/named.rfc1912.zones zone "gztzy.org" IN {type master;file "gztzy.org";allow-update { 192.168.1.20; };
};
zone "1.168.192.in-addr.arpa" IN {type master;file "192.168.1.arpa";allow-update { 192.168.1.20; };
};

第2步:在主服务器上配置防火墙放行规则,让DNS协议流量可以被顺利传递
[root@localhost named]# firewall-config

第3步:在从服务器上安装bind-chroot软件包。修改配置文件,让从服务器也能够对外提供DNS服务,设置从服务器IP地址,测试其与主服务器的网络连通性。

[root@localhost 桌面]# yum install -y bind
[root@localhost 桌面]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.1.20  netmask 255.255.255.0  broadcast 192.168.1.255inet6 fe80::20c:29ff:fe44:2ec6  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:44:2e:c6  txqueuelen 1000  (Ethernet)RX packets 744  bytes 66179 (64.6 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 2215  bytes 188465 (184.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[root@localhost named]# vim /etc/named.conf
options {listen-on port 53 { any; };listen-on-v6 port 53 { ::1; };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; };[root@localhost 桌面]# ping 192.168.1.3 -c4
PING 192.168.1.3 (192.168.1.3) 56(84) bytes of data.
64 bytes from 192.168.1.3: icmp_seq=1 ttl=64 time=0.228 ms
64 bytes from 192.168.1.3: icmp_seq=2 ttl=64 time=0.292 ms
64 bytes from 192.168.1.3: icmp_seq=3 ttl=64 time=1.25 ms
64 bytes from 192.168.1.3: icmp_seq=4 ttl=64 time=0.295 ms--- 192.168.1.3 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3001ms
rtt min/avg/max/mdev = 0.228/0.516/1.252/0.426 ms

第4步:在从服务器中填写主服务器的IP地址与要抓取的区域信息,然后重启服务。注意此时的服务类型应该是slave(从),而不再是master(主)。masters参数后面应该为主服务器的IP地址,而且file参数后面定义的是同步数据配置文件后要保存到的位置,稍后可以在该目录内看到同步的文件。

[root@localhost named]# vim /etc/named.rfc1912.zones
zone "gztzy.org." IN {type slave;masters {192.168.1.3; };file "slaves/gztzy.org.zones";
};
zone "1.168.192.in-addr.arpa" IN {type slave;masters {192.168.1.3; };file "slaves/192.168.1.arpa";
};
[root@localhost named]# named-checkconf
[root@localhost named]# systemctl restart named
root@localhost named]# cd /var/named/slaves/
[root@localhost slaves]# ls
192.168.1.arpa  gztzy.org.zones

第5步:检验解析结果。当从服务器的DNS服务程序在重启后,一般就已经自动从主服务器上同步了数据配置文件,而且该文件默认会放置在区域配置文件中所定义的目录位置中。随后修改从服务器的网络参数,把DNS地址参数修改成192.168.1.20,这样即可使用从服务器自身提供的DNS域名解析服务。最后就可以使用nslookup命令顺利看到解析结果了

[root@localhost slaves]# nslookup
> 192.168.1.3
Server:     192.168.1.20
Address:    192.168.1.20#533.1.168.192.in-addr.arpa name = dns.gztzy.org.
> yds.gztzy.org
Server:     192.168.1.20
Address:    192.168.1.20#53Name:    yds.gztzy.org
Address: 192.168.1.5
> exit

redhat 7中DNS 服务器配置与测试相关推荐

  1. DNS服务器配置和测试

    DNS服务器配置和测试 一.环境 两台服务器分别为:172.20.0.140和172.20.0.130,用yum install bind安装DNS服务. 二.程序配置 2.1 测试机配置 安装140 ...

  2. windows修改dns服务器,windowns中dns服务器配置与管理详解(多图)

    安装DNS服务器 在"服务器管理器"-"角色"-"添加角色"中安装DNS服务器. 选择DNS服务器 点下一步安装,然后安装 固定服务器IP地 ...

  3. redhat 7 中NFS服务器配置与管理

    实验准备 软件:VMware Workstation Pro 虚拟机:Red Hat Enterprise Linux 7 64 位 两台(一台服务器,一台客户端) 综合案例 某公司现需配置一台NFS ...

  4. RHEL5.1单域主/从NIS服务器配置及测试

    企业需求 公司准备在DMZ区域中放置多台服务器,服务器包括samba服务器.邮件服务器.WEB服务器.代理服务器,他们的IP分别是192.168.8.1.192.168.8.2.192.168.8.3 ...

  5. windows2003 DNS服务器配置

    windows2003 DNS服务器配置(图文详解) 实验前准备: 首先把本机的TCP/IP属性改好,例如(DNS的IP要填上本机的IP,本机IP一定是固定IP) 安装好DNS组件 一 配置DNS服务 ...

  6. DNS服务器配置详解

        DNS(Domain Name Server域名服务器)配置是最基本也是最重要的配置,如果仅仅是配置相信一个根本不知道什么是DNS的人也能很容易的搞定, 但是理解其中的原理以及每个具体细节的意 ...

  7. DNS服务器配置:DNS服务器配置:正反解析,主从服务器,子域授权,

    DNS服务器配置:正反解析,主从服务器,子域授权, 控制列表,bind view 配置前的设置:在172.16.59.1服务器上 安装bind: 配置好yum源后,用 # yum install bi ...

  8. DNS服务器配置项目,项目3 DNS服务器配置.doc

    项目3 DNS服务器配置 项目4 DNS服务器配置 [项目目标] 以链接克隆方式,获得已经安装服务器的克隆备份.并在克隆机上进行练习. 修改克隆机网卡名称. 配置网络参数(练习使用命令或图形方式). ...

  9. Linux系统中DNS域名服务器

    目录 前言 一.DNS作用 1.1为什么需要DNS系统 1.2DNS是什么 1.3DNS使用的协议及端口号 1.4正向解析查询过程 1.5两种查询方式 1.5.1递归查询 1.5.2迭代查询 二.DN ...

最新文章

  1. android 炫酷背景,炫酷-背景图垂直循环滚动登录页,Android RecyclerView实现
  2. IDFA的值什么时候会发生改变
  3. java 反射 性能_java高性能反射及性能对比
  4. C#多线程编程系列(四)- 使用线程池
  5. Google Protocol Buffers浅析(四)
  6. MySQL日期格式符
  7. 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jinjazz/archive/2009/04/29/4138000.aspx...
  8. 炼丹手册——梯度弥散和爆炸
  9. document.execCommand
  10. 模拟iic和硬件iic区别_技术货:IIC总线的FPGA实现
  11. 嵌入式linux 中文输入法,一种用于嵌入式Linux系统的中文拼音输入法的制作方法...
  12. 微信小程序列表切换样式简单案例
  13. 通过PPC来播放PC声音
  14. 无线WIFI“信道”
  15. 华为网吧服务器型号,网吧服务器价格
  16. 机器学习笔记(三)——归一化、KD树、数值型特征无量纲化、数值型特征分箱等
  17. Darknet框架的权重文件.weights类型转换为keras框架的权重文件类型.h5
  18. STM32填坑:时钟使能必须在外设初始化之前
  19. java游戏怎么导入jme3,java - JME:将带有纹理的Cinema 4d模型导入jMonkey Projekt - 堆栈内存溢出...
  20. 计算机中pdf怎么预览,如何在浏览器中开启PDF时默认显示Adobe Reader XI工具栏

热门文章

  1. 联想笔记本键盘亮屏幕不亮_联想笔记本电脑开机键亮但是黑屏 联想笔记本电脑键盘失灵怎么办...
  2. 将dropbear SSH移植到arm9开发板
  3. 4pics1word android,4 Pics 1 word Answers
  4. elasticsearch实践之代码结构设计,java银行项目面试题
  5. 如何编写一个简易网络爬虫
  6. 汇编语言课程设计动态图形设计小车动态图形
  7. 015.路径总和 路径总和II
  8. GEE——2018 年南非国家土地覆盖( 20 米分辨率多季节 Sentinel 2 卫星图像生成的)
  9. oracle vm virtualbox 64位,virtualbox
  10. 如何打造数据化决策管理