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

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

我有一台 Win 2k8 服务器,它托管一个域下的多个 IIS 应用程序。example.com对第二台服务器的需求增加了,需要获得更多服务器来托管我的应用程序。

在我的服务器上,我有一个*.example.com绑定的默认网站,它执行简单的重定向,还有几个具有不同用途的子域,例如foo.example.com。如果我将相同的配置添加到另一台服务器(不同的应用程序,不同的子域),会发生什么情况。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

这可能吗?我需要一些特殊配置吗?还是它会自动运行?

答案1

你需要添加另一个 DNS 记录*.example.com解析为s SERVER2IP 地址。

如果您当前在 example.com DNS 区域中有以下主机记录:

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

只需复制它,然后将新记录中的值更改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 服务器上启用(几乎所有托管服务提供商都启用循环)。

答案2

如果您的每个应用程序都位于 1 个且仅 1 个 Web 服务器上。那么您无需在 DNS 中包含 Web 服务器。只需根据需要创建记录即可。

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 证书,则可以在所有服务器上安装它以覆盖每个应用程序。

相关内容