BIND DNS 可以工作,但 BIND 视图根本不起作用

BIND DNS 可以工作,但 BIND 视图根本不起作用

早上好,我们公司计划为视图实施 BIND DNS。因此,我在 VMware 工作站(没有 dhcp 网络)中设置了一个小型测试环境来使用视图。我有 3 个 CentOS8 盒子,其中一个安装了 BIND。DNS 工作正常,但视图设置不正确。基本上,centos dns 客户端可以解析任何东西,就好像没有实施视图一样。我预计一个域中的一个客户端无法解析另一个域,反之亦然。我已经关注了这个视频我已经关注了这个视频 youtube.com/watch?v=AXsM18yyDQE 。下面是所涉及的配置文件,一切都按视频中的方式设置,但有些不对劲,我看不出是什么。

命名配置文件

include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";

acl mezam {
    192.168.161.0/24;
    localhost;
};
acl silverz {
    192.168.162.0/24;
};

命名的.conf.选项

options {
    listen-on port 53 { any; };
    listen-on-v6 port 53 { any; };
    directory   "/var/named";

    dnssec-validation auto;
    allow-query { "any";};
    allow-recursion { "any";};
}; 

命名的.conf.本地

view "mezam"
{
  match-clients { mezam; };

  zone "mezam.org." IN {
   type master;
   file "mezam.org.internal.zone";
  };
  zone "." IN {
   type hint;
   file "/var/named/named.ca";
  };
};

view "silverz"
{
  match-clients { silverz; };

  zone "silverz.org." IN {
   type master;
   file "silverz.org.internal.zone";
  };
};

和区域:

$ORIGIN mezam.org.
$TTL    3M
@   IN  SOA ns1.mezam.org.  hostmaster.mezam.org.   2020042402  3M 3M 3M 3M
    IN  NS  ns1.mezam.org.
    IN  A   192.168.161.5
ns1 IN  A   192.168.161.5
centos8 IN  A   192.168.161.10

-

$ORIGIN silverz.org.
$TTL    3M
@   IN  SOA ns1.silverz.org.    hostmaster.silverz.org. 2020042502  3M 3M 3M 3M
    IN  NS  ns1.silverz.org.
    IN  A   192.168.161.5
ns1 IN  A   192.168.161.5
centos8x    IN  A   192.168.162.10

我重新启动了绑定服务器,但直到我在 named.conf.options 文件中添加了 recursion yes 后,问题才得以解决。现在,下面是来自 162 网络中的 dns 客户端对 mezam.org 域的 dig 输出,它应该被拒绝,但实际上却被接受了:

[root@centos8x ~]# dig mezam.org

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el8 <<>> mezam.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51598
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 3e631d936b78fff089f3f8f45ea6b43109ba002df1beb326 (good)
;; QUESTION SECTION:
;mezam.org.         IN  A

;; ANSWER SECTION:
mezam.org.      180 IN  A   192.168.161.5

;; AUTHORITY SECTION:
mezam.org.      180 IN  NS  ns1.mezam.org.

;; ADDITIONAL SECTION:
ns1.mezam.org.      180 IN  A   192.168.161.5

;; Query time: 0 msec
;; SERVER: 192.168.161.5#53(192.168.161.5)
;; WHEN: Mon Apr 27 12:30:09 CEST 2020
;; MSG SIZE  rcvd: 116

答案1

从问题中可以看出,网络中的客户端向(另一个网络中的名称服务器的地址)192.168.162.0/24发送查询并得到错误的观点(表示为权威答案)。192.168.161.5

这就带来一个问题,192.168.162.0/24网络与192.168.161.0/24网络之间的连通性怎么样?有没有NAT?

要确认这一点,请启用查询日志或tcpdump在名称服务器计算机上运行,​​以确认来自其他网络的查询的源地址是什么。
如果源地址是网络中路由器接口的地址192.168.161.0/24,则表明它正在这些网络之间进行 NAT(这当然会破坏这种地址匹配)。

根据评论,似乎用于测试的主机是虚拟机,其互连环境是基于 NAT 的。

相关内容