这就是我的处境:
我有一个.net,(example.net)域。
域是设置(在我的注册人的平台上)指向我的主机提供商的DNS (通过自定义DNS设置)。
宿主提供程序提供DNS区域编辑器。
我需要做的是将子域:(lan.example.net)指向我的本地服务器,该服务器目前正在运行bind9。
我应该如何准确地将该子域委托给我的本地服务器并设置bind9,以便bind9所在的intranet可以使用该子域(这样,lan.example.net就可以通过intranet的PC访问,而无需连接到internet )。那些PC将解析到本地bind9服务器)。
我还需要创建更多的子域(由本地bind9管理),如下所示:
site1.lan.example.net
site2.lan.example.net由于lan.example.net已经被延迟到本地DNS,我应该能够添加更多的子域,供内部使用。
任何帮助都将不胜感激。谢谢。
发布于 2022-06-09 00:39:13
您不需要从面对DNS的公众委托给内部的DNS。只有当要在内部区域中使用DNSSEC时,才可以委托。但情况可能并非如此。
此外,使用NS和A (glue)记录从外部DNS委托将暴露您在给定IP地址上运行的内部DNS,而且这可能不是您想要的。如果这是您想要的,您还需要在本地防火墙上打开端口53/tcp和53/udp,以允许区域传输:AXFR和IXFR。
对于BIND9,您可以这样做,以创建额外的内部子区域:
; Nameservers records
ns.example.net. IN A 192.168.0.10
ns1.example.net. IN A 192.168.0.3
ns2.example.net. IN A 192.168.0.4
; Delegated internal zones
local.example.net. IN NS ns.example.net.
mgmt.example.net. IN NS ns.example.net.
; Delegated external zones
subzone.example.net. IN NS ns.example.net.
whatever.example.net. IN NS ns.example.net.
; Delegated external zone with its own nameservers (and glue records)
fnord.example.net. IN NS ns1.fnord.example.net.
fnord.example.net. IN NS ns2.fnord.example.net.
ns1.fnord.example.net. IN A 198.51.100.1
ns2.fnord.example.net. IN A 198.51.100.2最初的配置类似于这个问题,在这里可以找到:一个服务器可以为域和子域执行DNS吗?
最后,您还可以看看BIND9 视图。以避免将内部网络暴露给面向DNS服务器的公共网络。没有这个,你就会泄露你的内部IP和网络。基本上,您需要使用内部客户端在BIND9上创建ACL:
acl internal {
192.168.0.0/24;
localhost;
};
view "internalview" {
zone "lan.example.net " IN {
type master;
file "zones/lan.example.net";
allow-transfer { nameservers; };
};
};https://serverfault.com/questions/1102840
复制相似问题