![dns - BIND - 如何根据请求的子网返回不同的 IP](https://linux22.com/image/565692/dns%20-%20BIND%20-%20%E5%A6%82%E4%BD%95%E6%A0%B9%E6%8D%AE%E8%AF%B7%E6%B1%82%E7%9A%84%E5%AD%90%E7%BD%91%E8%BF%94%E5%9B%9E%E4%B8%8D%E5%90%8C%E7%9A%84%20IP.png)
我们有一个为办公室 A 提供服务的内联网 DNS 服务器(RHEL 上的 system-config-bind),以及一个连接办公室 A 和 B 的 VPN。办公室 A 有一个名为“dev”的服务器。
在办公室 A,要访问本地网络上的服务器“dev”,地址是 192.168.1.13
在办公室 B,要通过 VPN 访问服务器“dev”,地址是 192.168.2.13
我的问题是 - 我可以根据传入请求的子网将 DNS 服务器设置为向“dev”返回不同的 IP 吗?
示例:在办公室 A,BIND 返回 192.168。1.13 作为“dev”IP,因为发起请求来自 192.168.1/24 子网。
在办公室 B,BIND 返回 192.168。2.13 作为“dev”IP,因为发起请求来自 192.168.2/24 子网。
答案1
您需要使用视图:
view "officeA" {
match-clients { 192.168.1.0/24; };
include "/etc/named.conf.zones-rfc1912";
include "/etc/named.conf.zones-common";
include "/etc/named.conf.zones-officeA";
};
view "officeB" {
match-clients { 192.168.2.0/24; };
include "/etc/named.conf.zones-rfc1912";
include "/etc/named.conf.zones-common";
include "/etc/named.conf.zones-officeB";
};