我可以在多个服务器中使用DNS通配符绑定吗?

我有一个Win 2k8服务器,托pipe多个IIS应用程序,位于一个域example.com 。 第二台服务器的需求增加了,需要更多的服务器来托pipe我的应用程序。

在我的服务器上,我有一个*.example.com绑定的默认网站,它执行一个简单的redirect和几个具有不同用途的子域,如foo.example.com 。 如果我将相同的configuration添加到另一个服务器(不同的应用程序,不同的子域)会发生什么。 DNS足够聪明,以某种方式将查询路由到正确的子域到正确的服务器?

所以,我会从:

 SERVER1 (203.0.113.1) - Default: *.example.com - App1: app.example.com - App2: foo.example.com - App3: bar.example.com 

至:

 SERVER1 (203.0.113.1) - Default: *.example.com - App1: app.example.com - App2: foo.example.com - App3: bar.example.com SERVER2 (203.0.113.2) - Default: *.example.com - App4: baz.example.com - App5: qux.example.com 

这可能吗? 我需要一些特殊的configuration吗?还是会自动工作?

您需要为*.example.com 添加另一个parsing为SERVER2的IP地址的DNSlogging 。

如果您在example.com DNS区域中目前有以下主机logging:

 *.example.com [some TTL] IN A 203.0.113.1 

只需复制它,并将新logging中的值更改为203.0.113.1以便您拥有:

 *.example.com [some TTL] IN A 203.0.113.1 *.example.com [some TTL] IN A 203.0.113.2 

确保在DNS服务器上启用了循环法(几乎任何托pipe提供程序都启用循环)。

如果您的每个应用程序都只能在1个Web服务器上运行, 那么你不需要在DNS中包含Web服务器。 只需根据需要创buildlogging。

 server1 IN A 203.0.113.1 server2 IN A 203.0.113.2 *.example.com IN CNAME SERVER1 app.example.com IN CNAME SERVER1 foo.example.com IN CNAME SERVER1 bar.example.com IN CNAME SERVER1 baz.example.com IN CNAME SERVER2 qux.example.com IN CNAME SERVER2 

如果你真的想让*。example.com指向SERVER2,只要确保你有两个服务器的默认站点的内容。 但是只要你没有在多个服务器上运行相同的应用程序,就不需要在任何地方发送通配符。 这里的目标是多余的吗? 或只是处理负载? 如果你有一个通配符ssl证书,你可以在所有的服务器上安装它来覆盖每个应用程序。