我在本地网络上有一个 Web 服务器,其中有几个面向互联网的域。当我从网络内部访问这些域时,由于发夹式 NAT,我会被定向到路由器配置页面。
因此,我在服务器上安装了 BIND9,并将我的转发器设置为 Google DNS,以充当缓存名称服务器。然后,我将路由器 DNS 主名称服务器和辅助名称服务器设置为本地 BIND 服务器的 IP。一切运行良好。
现在我需要帮助配置 BIND,以便网络内的 Web 服务器上托管的域被路由到 Web 服务器而不是路由器配置页面。
答案1
我假设您的 BIND 名称服务器只能由网络内的系统访问。
您需要做的是在 named.conf 中为您的域创建区域,这些区域列出您的 Web 服务器的内部 IP 地址,而不是公共 IP 地址。named.conf 中的区域条目将如下所示:
zone "example.com" {
type master;
file "/var/lib/bind/pri/db.example.com"; //edit as necessary
allow-query { 192.168.1.0/24; }; //edit to match your internal network
allow-transfer { localhost; };
allow-update { none; };
};
然后,您需要在/var/lib/bind/pri/db.example.com
(或存储区域文件的任何位置)创建区域文件,其内容如下所示:
$TTL 3600
@ IN SOA example.com. adminmailaddr.example.com. (
2011061000 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS hostname.of.BIND.server. ;fully-qualified address with trailing dot
@ IN A 192.168.1.178 ; change this IP address as needed
www IN A 192.168.1.178 ; change this IP address as needed