我们在 IIS 中有多个具有不同 IP 地址的站点。这很酷,希望不同的 IP 都转到此服务器并使用正确的站点。但是我发现一个问题,当服务器进行传出连接时,我无法预测它将使用哪个 IP。我必须让一个客户端将所有 IP 添加到他们的防火墙,以便某个服务可以与他们的服务器通信。现在是时候向 IIS 添加另一个 IP/站点了,但我告诉他们不需要再添加任何 IP。所以问题是,我如何让 Windows Server 2003 只使用一个特定的 IP 进行传出呼叫,而不是让它变得不可预测?
如果这个描述还不够清楚,那么当我通过 RDP 进入服务器并打开 IE 并转到“我的 IP 是什么”时,结果有时会有所不同,这就是我发现为什么一个客户端的防火墙突然拒绝连接的原因。
我怎样才能使拨出的电话仅来自静态 IP 但仍然允许多个 IP 指向 IIS 中的不同站点?
答案1
查看路由表中的度量值:
ROUTE PRINT
如果同一目的地有多条路由,则度量值决定使用哪条路由,从而决定使用源 IP 地址。首先使用较低的度量值。
您可以使用PATHPING
命令查看使用了哪个地址。
ROUTE ADD|DELETE|CHANGE
允许您更改包括度量在内的路由表。
答案2
您可以从不想让流量通过的适配器上删除默认网关。这样流量就可以进入任何适配器,但只能通过配置了网关的适配器离开。
这个问题实际上不是 IIS 的问题,而更像是 TCP\IP 堆栈的问题。我认为您无法将此功能仅添加到 IIS,而不会影响使用网络连接的计算机上的所有其他内容。