DNS在Linux和windows下的不同

在Linux下搭建DNS和在windows下搭建DNS的配置操作方式有什么不同吗,还有就是DNS在这两个不同的环境下的工作效率是咋样的,维护效率又是咋样的

Linux下搭建域名系统(DNS)服务器与Windows下搭建DNS服务器在配置和操作上有一些区别。这些差异包括:

  • 软件:Linux下搭建DNS服务器需要安装BIND等DNS服务器软件,Windows下需要安装Microsoft DNS等DNS服务器软件。
  • 配置文件:Linux和Windows下DNS服务器的配置文件一般存放在不同的位置,格式也不同。
  • 命令行界面:要在 Linux 下配置和操作 DNS 服务器,您需要使用命令行界面,例如终端,而在 Windows 下,您可以使用图形用户界面。

  • 性能:DNS 服务器的性能可能会有所不同,具体取决于所使用的特定硬件和软件,以及服务器的工作负载和流量模式。不同环境下 DNS 服务器的性能很难一概而论,因为这取决于每个案例的具体情况。

  • 维护:DNS 服务器的维护也可能因所使用的特定硬件和软件以及服务器的特定需求和资源而异。与性能一样,很难概括不同环境中 DNS 服务器的维护。

一般来说,Linux和Windows都可以用来构建和运行可靠的DNS服务器,操作系统的选择将取决于服务器的具体需求和资源。

  • 这篇文章讲的很详细,请看:Linux核心目录文件之DNS 与Linux无法上网问题解决
  • 除此之外, 这篇博客: Linux系统下的DNS(配置高速缓存DNS,DNS正向解析,DNS反向解析,DNS双向解析,DNS服务器同步更新)中的 分散DNS-server的压力(集群,冗余) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 配置方法:
    1.再找一台dns服务器作为辅助dns-server

    配置IP
    配yum源
    下载bind服务器
    

    2.将dns服务添加到火墙中

    systemctl  start firewalld
    firewall-cmd --permenant --add-service=dns
    firewall-cmd --reload        ##永久添加dns服务
    firewall-cmd --list-all         ##查看dns服务是否添加成功
    

    在这里插入图片描述
    3.对bind的配置文件进行修改

    netstat -antulpe | grep named   ##查询此时53端口的开放情况
    vim /etc/named.conf    ##bind的配置文件
    listen-on port 53 {any;};  ##监听所有的53端口
    allow-query    {any;};     ##允许所有主机询问
    systemctl restart named   ##重启服务
    

    在这里插入图片描述
    4.

    vim /etc/named.rfc1912.zones   ##使其访问所需要的配置文件
    zone "westos.com" IN{
                  type slave;
                  masters:主DNS-server IP
                  file "slaves/westos.com.zone"   ##查找该文件
                  allow-update {none;};
     };
    

    在这里插入图片描述
    4.dns服务器

    vim /etc/resolv.conf
    添加dns为nameserver为172.25.254.(辅助dns服务器ip)
    

    在这里插入图片描述
    测试注意测试需要有网络的环境下

    dig 对应的域名看服务是否搭建完成
    

    在这里插入图片描述

    辅助DNS-server同步主DNS-server的方法
    当在主dns-server中改变信息,重启服务;dig;
    在辅助dns-server中重启服务,dig发现辅助dns-server并没有同步主dns-server的服务
    修改www.westos.com对应的ip为188
    在这里插入图片描述
    在主dns上dig,已更改信息
    在这里插入图片描述
    在辅助dns上dig,发现并没有更新
    在这里插入图片描述

    解决方法
    第一种方法:

    cd /var/named/slaves/
    rm -fr westos.com.zone    ##删除原来的解析文件
    sytemctl restart named  ##重启服务,重新生成westos.com.zone文件
    dig      ##测试
    

    但是上述方法对于dns-server服务器数量众多的情况并不适用,于是我们采取下列方式:
    主dns服务器告知辅助dns服务器信息变动,让辅助dns服务器主动来同步主dns的信息
    操作步骤:
    在主DNS服务器中

    vim /etc/named.rfc1912.zones
    添加
    also-notify {172.25.254.204}  ##提醒辅助dns服务器来同步
    systemctl restart named
    

    在这里插入图片描述
    在辅助dns服务器中

    systemctl restart named 
    dig www.westos.com   ##发现依旧没有同步
    

    在主DNS中更改解析文件
    在这里插入图片描述
    主DNS服务器dig
    在这里插入图片描述
    在辅助DNS中dig,发现还是没有同步
    在这里插入图片描述
    原因是因为主dns服务器虽然提醒辅助dns服务器信息变动来同步,但是辅助dns并没有检测到有需要同步的信息,所以没有进行同步
    这一步的解决方法:
    更改主DNS服务器中的westos.com.zone文件,将其中的数字进行更改,如图所示
    注意:该数字不能超过十位数,而且最好是有意义的数字,例如年月日第几次更新(2019080501)
    更改后重启服务
    在这里插入图片描述
    测试
    辅助dns服务器

    systemctl restart named
    dig www.westos.com   ##同步需要一定的时间
    

    在这里插入图片描述

    让主DNS服务器同步某台服务器的更新
    操作步骤:
    在主DNS上

    vim /etc/namedconf
    添加
    allow-update {172.25.254.4; };     ##允许谁更新
    systemctl restart named   
    

    在这里插入图片描述

    在允许更新的主机上发送更新信息

    nsupdate
    >server 172.25.254.主dnsIP
    >update add hello.westos.com 86400 A 172.25.254.123
    >send
    

    在这里插入图片描述
    如果出现报错,查看日志,可能是/var/named/权限不够
    在主dns服务器上

    chmod  770 /var/named/
    

    允许更新的主机重新发送更新信息,显示发送成功
    在主dns服务器上直接dig先不用重启
    在这里插入图片描述

    在主dns服务器上发现同步更新后,查看 /var/named/下会出现 .jnl文件并且观察westos.com.zone中的文件内容
    在这里插入图片描述

    备份:cp -p westos.com.zone /mnt/
    重启服务:systemctl restart named
    dig  重新观察westos.com.zone中的内容,与原先的wetos.com.zone会有区别
    

    在这里插入图片描述

    systemctl restart named ##重启服务之后的westos.com.zone文件中的内容
    

    在这里插入图片描述

    rm -fr westos.com.zone
    rm -fr westos.com.zone.jnl
    重新将原wetos.com.zone复制回来
    dig   发现还是可以同步更新状态
    

    在这里插入图片描述