![如何在 DNS 中添加通配符,如 www2.*.domain.com 和 www1.*.domain.com?](https://linux22.com/image/597405/%E5%A6%82%E4%BD%95%E5%9C%A8%20DNS%20%E4%B8%AD%E6%B7%BB%E5%8A%A0%E9%80%9A%E9%85%8D%E7%AC%A6%EF%BC%8C%E5%A6%82%20www2.*.domain.com%20%E5%92%8C%20www1.*.domain.com%EF%BC%9F.png)
我有两台负载平衡的服务器。部署时,我想确保生产用户不受影响。以下是我计划的:
- 从负载均衡器中删除 Web 服务器 2 (www2)。
- 部署到www2。
- 进行一些快速测试(一个域名下有 100 多个迷你网站)
- 将 www2 重新纳入负载均衡器
- 然后对 www1 重复
有什么方法可以避免手动添加所有子域的 DNS 条目?或者,有人有更好的方法来解决这个问题吗?
答案1
我不确定从你的问题陈述中我是否了解你的所有限制,所以我不确定我是否可以为你的问题提出一个一般性的答案,但我想指出的是,为你的测试更改任何面向外部的 DNS 可能不是一个好主意——请记住,即使在你将其改回后,网络上的任何其他实体在你临时重定向时对该 DNS 记录进行查询都是允许的(实际上是鼓励的)DNS 协议将临时答案缓存一段时间,最长为资源记录的 TTL(生存时间)值中指定的秒数。
正如您所建议的,在您自己的机器上对 hosts 文件进行更改是一种最低限度侵入的方式,可以让您的解析器获得您想要的临时答案,同时不会对不属于您测试的其他用户造成意外的副作用。
如果您需要完成比编辑 hosts 文件更多的任务,您可以设置(并指示解析器使用)本地 DNS 服务器,该服务器具有自己自定义的权威区域副本——或者,如果您的 DNS 服务器支持视图,则设置一个特殊视图,该视图具有不同的区域副本,用于测试目的。通过将客户端计算机添加到视图的地址匹配列表中,您可以获得一组答案用于测试,同时继续为其他所有人提供规范答案。
如果您操作正确,您可以设置一次视图并将其设置为重复使用(避免重复编辑),只需从视图的地址匹配列表中添加或删除您的测试机器(或更改您的测试机器的IP以匹配/不匹配)以更改您得到的答案..
不过,我感觉可能还存在其他从您的问题陈述中未明显看出的“陷阱”。