电脑技术学习

关于服务发布中请求转发选项的说明

dn001

在ISA防火墙中发布任何服务时,发布规则属性标签中具有一个请求转发选项,如下图所示:

它具有以下两个选项:

  • 使请求显示为来自 ISA 服务器计算机

  • 使请求显示为来自初始客户端。

那么,它们之间的区别是什么呢?
其实它们的含义可以从选项的字面意思上进行理解:

如果你选择使请求显示为来自 ISA 服务器计算机,那么当其他客户访问ISA防火墙所发布的服务时,ISA防火墙在转发原始客户所发送的请求数据包时,会将IP数据包的源IP地址修改为自己转发此请求IP数据包的网络接口的IP地址。此时,被发布的服务只是认为连接请求是由ISA防火墙发起的,它不会知道发起原始连接请求的原始客户的任何信息,并且被发布的服务器无需知道如何到达原始客户(无需具有到达原始客户的路由),只需要知道如何到达ISA防火墙转发请求IP数据包的网络接口即可。在发布Web服务时,此选项是默认选项。

如果你选择使请求显示为来自初始客户端,那么ISA防火墙在转发原始客户所发送的请求数据包时,不会修改IP数据包中的源IP地址(保留原始数据包中的源IP地址)。此时,被发布的服务认为连接请求是由原始客户发起的,为了响应原始客户的连接请求,被发布的服务器必须知道如何将响应数据包回复至原始客户(具有到达原始客户的路由),并且此响应数据包必须通过ISA防火墙进行转发。这样写起来略显深奥,你可以这样认为:由于原来是通过ISA防火墙将原始客户的请求数据包发送至被发布的服务器,所以当被发布的服务器回复响应数据包到原始客户时,必须同样通过ISA防火墙来进行转发,否则,原始客户和被发布的服务之间的通讯将会失败。大部分情况下,你可以通过将ISA防火墙配置为被发布的服务器的默认网关来实现这些要求;如果不能将ISA防火墙配置为被发布的服务器的默认网关,你必须配置被发布的服务器使用ISA防火墙作为到达原始客户的网关;如果ISA防火墙和被发布的服务器之间还具有多个子网,那么ISA防火墙必须作为被发布的服务器到原始客户之间的路由链上的一个节点。在发布除Web服务外的其他服务时,此选项是默认选项。

有许多朋友在论坛提问,说在发布服务的时候,如果在请求转发选项中选择使请求显示为来自 ISA 服务器计算机,那么外部客户就可以访问发布的服务,如果选择使请求显示为来自初始客户端,则外部客户就不能访问发布的服务了。对于这个问题,就是没有满足上面的条件:被发布的服务器必须知道如何将响应数据包回复至原始客户(具有到达原始客户的路由),并且此响应数据包必须通过ISA防火墙进行转发。