假设:
- 我拥有一个域名
example.com
- 我有一个可公开访问的 DNS 服务器
ns1.example.com
- 我想托管互联网上的网站,例如
app-prod.example.com
- 我想托管仅在本地网络中可用的其他网站,例如
app-stage.example.com
我可以将所有 DNS A 记录放在公开可用的ns1.example.com
服务器中吗?例如
A app-prod.example.com 93.184.216.34
A app-stage.example.com 10.1.1.6
我知道这有效,但这是个好做法吗?
从我看到的情况来看,这节省了一些工作,例如,我不必配置本地 DNS 服务器,我不必配置 DHCP 来将用户指向该服务器等。
这种方法有什么缺点吗?
答案1
不,这不是最佳实践,但如果没有更好的解决方案,您可以这样做。有两件事需要考虑:
确保公共用户不会将此 DNS 记录作为托管应用程序的正常公共服务的一部分。
假设您公开“宣布”本地网络的 IP。在我看来,这不是一个很大的安全问题,但这取决于攻击媒介 - 而且我不想在不了解您的网络的情况下提供安全建议。
一般情况下,我建议设置本地 DNS 服务器(这对您而言是最佳做法)。配置并不困难,一旦它们进入您的 LAN(直接或通过 VPN),您可以通过 DHCP 等方式传递 DNS 服务器。但您仍然可以先使用公共 DNS 服务器尝试您的想法,一旦出现问题,您可以切换到本地 DNS。
答案2
任何有效、简单且安全的做法都是好的做法。
我看到的一个缺点是它强迫你给本地服务器一个静态 IP 地址。
另一个缺点是,这会污染公共.com
DNS 服务器,导致无法从互联网访问的网站,而这些网站对于整个世界来说都是垃圾。这不是一个好的做法。
但如果这一切都不困扰您,那么请继续以这种方式解决您的问题。