dns的基本设定(二)

一、从属dns

在网络越来越发达的时代,若dns出现问题,则整个网络均会处于瘫痪的状态,为了缓解dns的巨大压力,所以出现了主从dns服务器。

dns利用类似于树形目录的架构,将主机名的管理分配在不同的层级的dns服务器中,并进行分层管理,所以每一台dns服务器记忆的信息就不会很多,而且若有ip的变动时也相对来说更容易修改。

##开启第二台虚拟机,作出以下策略。

1、配置yum源。

2、yum install bind -y

3、systemctl stop firewalld

4、systemctl disable firewalld

5、systemctl start named

6、systemctl enable named

##配置好从属dns后.

vim /etc/named.conf

 10 options {
 11         listen-on port 53 { any; };
 12         listen-on-v6 port 53 { ::1; };
 13         directory       "/var/named";
 14         dump-file       "/var/named/data/cache_dump.db";
 15         statistics-file "/var/named/data/named_stats.txt";
 16         memstatistics-file "/var/named/data/named_mem_stats.txt";
 17         allow-query     { any; };

vim  /etc/named.rfc1912.zones

 24 zone "westos.com" IN {
 25         type slave;                                                 ##类型为从属dns
 26         masters {172.25.254.173;};                       ##主dns为172.25.254.173
 27         file "slavec/westos.com.inter";                   ##文件为172.25.254.173的westos.com.inter
 28         allow-update { none; };                              ##没有人可以进行更新
 29 };

主dns服务器:

因为在主dns服务器上设置过双向解析的实验,所以以下实验均在外网的配置文件中实现。

vim /etc/named.rfc1912.zones.inter

 24 zone "westos.com" IN {
 25         type master;
 26         file "westos.com.inter";
 27         allow-update { none; };
 28         also-notify {172.25.254.71;};          ##更新知会71从属dns服务器。
 29 };

在主dns与从属dns上,如果将主dns中文件进行了改变,在从属dns服务器上若必须进行重启服务的行为,则是一种非常麻烦的行为,所以可以在双方的配置文件中进行配置,在主dns上改变了相应的文件,从属dns是在不用重启服务的情况下,直接进行文件的更新。在此在配置文件中有一个非常重要的参数,(serial)。每次在将主dns上的配置文件改变是,必须将serial参数进行相应的改变,从属dns才会有对配置文件的更新,此参数的最大数值为10位数,所以可将此数改为2017112701,表示为2017年11月27号文件的第一次改动,会更加方便管理。

改变主dns服务器上westos.com.inter文件的内容。

对主dns进行重启服务,systemctl restart named

测试:

###理论上讲,在从属dns上的/var/named/slaves/目录中应该有主dns的westos.com.inter文件,但若没有出现,则或许是selinux,权限的问题。

####在进行以下实验时,注意将主dns上的文件westos.com.inter进行复制一份,因为在进行以下实验时,若在主dns上将服务重启后,改文件会进行相应的改变,为了方便下次实验的进行,最好将该文件复制一份,在复制时,注意加上-p,

二、dns的远程更新

在dns服务器上修改配置文件

vim /etc/named.rfc1912.zones.inter

 24 zone "westos.com" IN {
 25         type master;
 26         file "westos.com.inter";
 27         allow-update { 172.25.254.71; };            ##允许172.25.254.71主机进行远程更新
 28         also-notify {172.25.254.71;};
 29 };
重启服务systemctl restart named

测试:##此时测试时会出现问题,注意日志的报错。

[root@slave slaves]# nsupdate
> server 172.25.254.173
> update add bbs.westos.com 86400 A 1.1.1.116
> send
update failed: REFUSED


日志报错为:文件权限不够,被拒绝

解决方法:chmod g+w /var/named

重新测试:

[root@slave slaves]# nsupdate
> server 172.25.254.173
> update add bbs.westos.com 86400 A 1.1.1.116
> send

在主dns上重启服务后,westos.com.intet被改变为:

三、key的制作

远程更新的ip是可以被别的主机进行冒充,会造成不安全的行为所以在此制作一个key,将公钥与私钥传给需要远程更新的主机。

1、制作key

cp -p /etc/rndc.key /etc/zhaoyan.key

2、[root@server named]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST zhaoyan
Kzhaoyan.+157+38425

3、改变/etc/zhaoyan/key 中的内容

  1 key "zhaoyan" {
  2         algorithm hmac-md5;
  3         secret "7DZwUW8TwNC4GYeblR0vPQ==";
  4 };

4、改变/etc/named.conf文件中的内容

将所建成的公钥私钥传给远程更新的主机

scp Kzhaoyan.+157+38425.* root@172.25.254.71:/mnt/

5、重启服务

测试:

[root@desktop mnt]# nsupdate -k Kzhaoyan.+157+38425.key
> server 172.25.254.173
> update delete bbs.westos.com
> send
>


四、动态ip的远程更新

(要进行远程更新主机与域名必须一致,本次实验为www.westos.com)

上述的远程的更新的ip是静态的,但也是一种不安全的行为,若其他主机将ip改为配置文件中允许远程更新的ip,是一种非常不安全的行为,若可进行远程更新的主机是一个动态获取ip,在每次重启网络服务时就会改变ip,更加不利于管理。此时,将dhcp与dns进行一种结合,会是一种非常明智的行为.

1、下载dhcp服务

2、修改配置文件

3、先做好dhcpd服务
vim /etc/dhcp/dhcpd.conf

  7 option domain-name "westos.com";                                           ##域名为westos.com
  8 option domain-name-servers 172.25.254.173;                          ##dns为172.25.254.173


 30 subnet 172.25.254.0 netmask 255.255.255.0 {              
 31   range 172.25.254.190 172.25.254.200;                       ##要使ip在此范围内
 32   option routers 172.25.254.173;                                    ##网关为172.25.254.173
 33 }

重启服务:

此时应已经可以实现dhcp的动态获取

但与dns并没有关联,通过man得知interim的使用

在/etc/dhcp/dhcpd.conf文件中修改配置文件

此时要远程更新的钥匙是不用给对应的主机了,在dns服务器上是知道此ip与钥匙的。

 34 key zhaoyan {
 35         algorithm hmac-md5;
 36         secret "Ki9lzMIPZJOLSGoxQMaJgg==";
 37 };
 38
 39 zone westos.com. {
 40   primary 127.0.0.1;                                   ##使用dns服务器内部的传输,速度会有很大的提升
 41   key zhaoyan;
 42 }

此时打开另一台虚拟机,将ip的配置文件改为dhcp动态获取模式,并且关闭除了dns服务器之外其他所有的dhcp服务,以免造成干扰,然后在这台虚拟机上重启网络服务。

测试结果:

动态获取的结果:


dns服务器监控结果:


###总结:在dns的所有配置中,有报错,基本会有以下几点。

1、 NXDOMAIN  证明在dns服务器上没有此域名

2、SERFAIL  :

(1)、本机没有做本地解析文件,出现失败的报错

(2)、dns服务器上没有关闭firewalld

(3)、dns服务器上没有关闭selinux

(4)、实验中经常会出现cp文件,没有加-p参数,使得权限出现了问题。

##排错思想均为连接出现失败时,清空日志,重新连接,找出错误原因,大部分原因均是打错行为,尤其是在name.localname文件复制过去后,重新编辑此文件,注意此文件中@的用法,很重要!!!




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值