首页 > 其他分享 >简述DNS服务器原理,并搭建主-辅服务器

简述DNS服务器原理,并搭建主-辅服务器

时间:2023-10-07 14:55:46浏览次数:35  
标签:10.0 named 简述 DNS org 服务器 tan


1)DNS简介:

DNS 是计算机域名系统 (Domain Name System 或Domain Name Service) 的缩写。域名便于人们记忆,但机器之间只认IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。上网时输入的网址通过域名解析系统解析找到了相对应的IP地址,这样才能上网。

 

2)DNS服务器工作原理:

假设我们访问www.tao.com的域名时的流程:

  1. 本地主机访问www.tao.com的域名时,首先会查询本地hosts文件及dns缓存,查询是否有对应的地址和ip映射关系,如有有则调用这个ip地址映射完成域名解析。

  2. 如果hosts文件和dns缓存没有这个域名的映射,则会根据tcp/ip参数设置中的首选DNS服务器,在此我们叫他本地DNS服务器,此服务器收到查询时,如果该域名包含在本地配置区域资源中,则返回解析结果给客户端,完成域名解析。

  3. 如果本地DNS服务器中没有,则本地DNS服务器会把请求发送到13台根服务器(.表示根服务器),根服务器收到请求后,发现自己没有相关记录,但是根服务器有下一级.com域名的解析记录。将.com域名对应的ip返回本地DNS服务器。

  4. 本地DNS服务器根据ip联系.com服务器,查询www.tao.com的ip,.com服务器查询后发现自己没有相关记录,但是有下一级tao.com域名的解析记录。返回tao.com的ip地址。

  5. 本地DNS服务器再次向tao.com服务器查询,此服务器查询到自己有www.tao.com的域名对应解析,返回对应ip地址。

  6. 本地DNS将解析到的www.tao.com的ip地址放到DNS缓存中。并返回客户端对应的ip地址。

     

    说明:本地客户端向DNS查询属于递归查询(步骤2),本地DNS服务器向其他DNS服务器查询属于迭代查询(步骤3-步骤5)。Client -->hosts文件 --> Client DNS Service Local Cache --> DNS Server (recursion递

    归) --> DNS Server Cache -->DNS iteration(迭代) --> 根--> 顶级域名DNS-->二级域名DNS…

     

3)搭建主-辅服务器

说明: 主DNSip:10.0.0.150

备DNSip:10.0.0.160

客户端ip:10.0.0.152

主用DNS服务器:

1、安装bind包,编辑/etc/named.conf,启用本机指定网口监听53端口号、指定网口接收DNS查询请求,并允许接收指定备用DNS的区域传送;

[root@centos8 ~]#yum install bind -y
[root@centos8 ~]#vim /etc/named.conf
#注释掉下面两行
// listen-on port 53 { 127.0.0.1; };
// allow-query     { localhost; };
#只允许从服务器进行区域传输
allow-transfer { 10.0.0.160;};

2、编辑/etc/named.rfc1912.zones文件,新增指定区域参数;


[root@centos8 ~]#vim /etc/named.rfc1912.zones    
#加上这段
zone "tan.org" {
  type master;
  file  "tan.org.zone";
};

 

3、新建zone文件,/var/named/tan.org.zone,添加SOA,NS,A,MX等记录;


[root@centos8 ~]#cp -p /var/named/named.localhost /var/named/tan.org.zone
#如果没有-p,需要改权限。chgrp named magedu.org.zone
[root@centos8 ~]#vim /var/named/tan.org.zone
$TTL 1D
@ IN SOA master admin.tan.org. (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
        NS   master
          NS   slave
master     A    10.0.0.150
slave      A    10.0.0.160
www       A    10.0.0.152

 

4、使用named-checkconf、named-zone检查服务端配置、区域文件配置。


[root@centos8 ~]#named-checkconf
[root@centos8 ~]#named-checkzone "tan.org" /var/named/tan.org.zone
zone tan.org/IN: loaded serial 1
OK

 

5、使用systemctl start named启动DNS服务

[root@centos8 ~]#systemctl start named          #第一次启动服务
[root@centos8 ~]#rndc reload                    #不是第一次启动服务

 

备用DNS服务器:

1、安装bind包,编辑/etc/named.conf,启用本机指定网口监听53端口号、指定网口接收DNS查询请求,不允许区域传送;


[root@centos8 ~]#yum install bind -y
[root@centos8 ~]#vim /etc/named.conf
// listen-on port 53 { 127.0.0.1; };
// allow-query     { localhost; };
#不允许其它主机进行区域传输
  allow-transfer { none;};

 

2、编辑/etc/named.rfc1912.zones文件,新增指定区域参数(type类型slave,masters指定主DNS服务器,zone文件是放在/var/named/slaves/下且是自动生成);

[root@centos8 ~]#vim /etc/named.rfc1912.zones
zone "magedu.org" {
  type slave;
  masters { 主服务器IP;};                                                      
         
  file "slaves/tan.org.slave";
};

 

3、重启服务,并检查区域数据库文件是否生成。

[root@centos8 ~]#systemctl start named          #第一次启动服务
[root@centos8 ~]#rndc reload                    #不是第一次启动服务
[root@centos8 ~]#ls /var/named/slaves/tan.org.slave #查看区域数据库文件是否生成
/var/named/slaves/tan.org.slave

客户端验证解析结果:


首先客户端网卡配置文件DNS指向我们的两个dns
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=static
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=10.0.0.152
PREFIX=24
GATEWAY=10.0.0.2
DNS1=10.0.0.150
NS2=8.8.8.8


#使用主DNS解析
[root@localhost yum.repos.d]# dig www.tan.org @10.0.0.150

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> www.tan.org @10.0.0.150
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49336
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;www.tan.org.                   IN     A

;; ANSWER SECTION:
www.tan.org.            86400   IN     A       10.0.0.152

;; AUTHORITY SECTION:
tan.org.                86400   IN     NS     slave.tan.org.
tan.org.                86400   IN     NS     master.tan.org.

;; ADDITIONAL SECTION:
master.tan.org.         86400   IN     A       10.0.0.150
slave.tan.org.          86400   IN     A       10.0.0.160

;; Query time: 0 msec
;; SERVER: 10.0.0.150#53(10.0.0.150)
;; WHEN: Sat Oct 30 20:37:16 CST 2021
;; MSG SIZE rcvd: 129

#使用备DNS解析
[root@localhost yum.repos.d]# dig www.tan.org @10.0.0.160

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> www.tan.org @10.0.0.160
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59303
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;www.tan.org.                   IN     A

;; ANSWER SECTION:
www.tan.org.            86400   IN     A       10.0.0.152

;; AUTHORITY SECTION:
tan.org.                86400   IN     NS     slave.tan.org.
tan.org.                86400   IN     NS     master.tan.org.

;; ADDITIONAL SECTION:
master.tan.org.         86400   IN     A       10.0.0.150
slave.tan.org.          86400   IN     A       10.0.0.160

;; Query time: 0 msec
;; SERVER: 10.0.0.160#53(10.0.0.160)
;; WHEN: Sat Oct 30 20:37:21 CST 2021
;; MSG SIZE rcvd: 129

#在主DNS停掉服务
[root@centos8 ~]#systemctl stop named
#主服务器挂掉后,使用主服务器不能解析,但备用服务器正常解析。
[root@localhost ~]# dig www.tan.org @10.0.0.150

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> www.tan.org @10.0.0.150
;; global options: +cmd
;; connection timed out; no servers could be reached
[root@localhost ~]# dig www.tan.org @10.0.0.160

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> www.tan.org @10.0.0.160
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30808
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;www.tan.org.                   IN     A

;; ANSWER SECTION:
www.tan.org.            86400   IN     A       10.0.0.152

;; AUTHORITY SECTION:
tan.org.                86400   IN     NS     slave.tan.org.
tan.org.                86400   IN     NS     master.tan.org.

;; ADDITIONAL SECTION:
master.tan.org.         86400   IN     A       10.0.0.150
slave.tan.org.          86400   IN     A       10.0.0.160

;; Query time: 0 msec
;; SERVER: 10.0.0.160#53(10.0.0.160)
;; WHEN: Sat Oct 30 20:43:44 CST 2021
;; MSG SIZE rcvd: 129

标签:10.0,named,简述,DNS,org,服务器,tan
From: https://www.cnblogs.com/tanll/p/17746299.html

相关文章

  • Python简易HTTP文件服务器
    我超怕的-HTTPsimplefileserverusePython-https://www.cnblogs.com/iAmSoScArEd/p/17745959.htmlHowtouse安装依赖:pip3installflask保存到文本simple_file_server.py后运行:python3simple_file_server.py浏览器访问:http://ip:9999CodefromflaskimportFlask,......
  • 解读亚马逊云服务器 EC2 预留实例与按需实例的区别,及其在成本节约的优势
    随着云计算不断改变企业的运营方式,优化成本已成为首要任务。利用AmazonEC2预留实例是实现云端成本节约最有效的方法之一。以下将探讨什么是AmazonEC2预留实例,它与按需实例的区别,以及它在成本节约和灵活性方面提供的好处。在深入了解AmazonEC2预留实例的细节之前,需......
  • DTU,RTU,边缘网关,串口服务器,IO控制器 等等的区别
    DTU,RTU,边缘网关,串口服务器,IO控制器  等等的区别 工业DTUData Transfer Unit数据传输单元,又名“数据传输单元、集中器、转换器、转发器”等,通常就是路由器、网关,支持多种工业协议如mqtt\iec101\modbus等协议有线输入,再用有线或无线向远端传送。当前联网系统,所有其他设备都......
  • 阿里云服务器经济型e系列和u1有什么区别?性能差异
    阿里云服务器经济型e实例和云服务器u1有什么区别?同CPU内存配置下云服务器u1性能更强,u1实例价格也要更贵一些。经济型e实例属于共享型云服务器,不同实例vCPU会争抢物理CPU资源,并导致高负载时计算性能波动不稳定,而云服务器u1是企业级实例,实例间无CPU资源争抢,实例计算性能稳定且有严格......
  • 【VMware篇】6-Esxi上Windows server 2019安装AD域控、DHCP、DNS、KMS
    第1章前言  本文主要介绍在Windowsserver2019上安装AD域控、DHCP、DNS、KMS服务器以及创建好域控后组织单元的创建。AD(activedirectory)域     AD域是一种广泛使用的身份验证和访问控制解决方案,它是由Microsoft开发的。AD域能够为组织中的用户、计算机和其他网络资源提供......
  • 阿里云服务器技术、架构、硬件及机房说明
    阿里云服务器技术创新、网络技术创新、数据中心技术创新和智能运维:云服务器方升架构、自研硬件、自研存储硬件AliFlash和异构计算加速平台,以及全自研网络系统技术创新和数据中心巴拿马电源、液冷技术等技术创新说明,阿里云百科分享阿里云服务器技术创新、网络创新和数据中心创新说明......
  • 服务器没有开放3306端口 远程访问MySQL数据库方法
    一、前言​当装有MySQL的服务器为了防止数据库被黑,提高安全性,把3306端口禁止掉,禁止对外访问,我之前写过一篇是借助跳板机的SSH隧道来访问实现安全,这种情况依然需要开放3306端口和使用一个额外的跳板机,比较麻烦,后来,突发奇想,直接使用MySQL所在服务器来做SSH隧道,并且使用localho......
  • 解决linux服务器时间相差8个小时的问题
    出现时间差一般都是因为时区设置不正确所导致的。首先,使用date命令查看服务器的时间,date+%Z可以查看当前系统的时区设置。root@localhost:~#date2023年07月05日星期三07:00:27UTCroot@localhost:~#date+%ZUTC1234这里显示的是UTC时间,因为UTC是标准时间,而中国位于东八区......
  • Minecraft个人服务器搭建自己的皮肤站并实现外置登录更换自定义皮肤组件
    Minecraft个人服务器搭建自己的皮肤站并实现外置登录更换自定义皮肤组件大家好,我是艾西有不少小伙伴非常喜欢我的世界Minecraft游戏,今天小编跟大家分享下Minecraft个人服务器怎么设置皮肤站。Minecraft皮肤站是什么?其实官网就有皮肤站,在正版用户选择正版的登录后,MC客户端就会到官方......
  • [分享]云服务器挂马清理实例
    网站通过百度搜索访问,会跳转到异常网站。经过仔细分析、核实,确定是被挂马造成,但网页源文件中、使用安全工具扫描都没有发现异常代码。新建空文件1.html,使用工具测试也显示挂马,说明是系统层面问题。经查看站点设置等信息,发现iis站点》模块被加入了异常dll,如图根据经验,%windi......