一台IIS服务器上的多个站点需要不同的传出IP地址

我有一个IIS服务器设置了多个网站,每个都有自己的IP地址。 它正常工作路由传入的stream量到正确的网站。 但是,出站stream量似乎来自物理机器的IP地址,而不是单个站点。 它们需要作为独立的IP地址出现在外部,因为它们与之通信的服务仅通过IP地址进行区分。

也许有人已经build立了一个NAT服务器来做到这一点? 有任何想法吗? 谢谢!

我不认为你会用IIS单独获得这个function。 你可以放置一些前端的NAT盒子(比如一台Linux机器上的w / iptables),在IIS上的不同的TCP端口上运行不同的站点,把它们NAT到Linux机器上的不同的IP上,和肮脏的解决scheme。 IIS和Windows,但是,不会做你想做的。

iptables规则来做你想要的东西会很简单。 思科路由器的NAT以及其他embedded式NAT实现也可以实现。

当你沟通你是哪一级? 如果您处于TCP级别,则可以设置要使用的接口。

这取决于传出的请求是如何做出来的。 如果您使用的设备支持请求,那么您可以要求它绑定到特定的地址而不是默认地址。

我很确定,你不能用普通的IIS方法来做到这一点(就像使用WinHTTP库一样)。

在其他工具/库中,寻找一个“绑定地址”选项,例如从wget手册页获取的选项:

--bind-address=ADDRESS When making client TCP/IP connections, bind to ADDRESS on the local machine. ADDRESS may be specified as a hostname or IP address. This option can be useful if your machine is bound to multiple IPs. 

检查以确保您的额外IP不会被路由到一个单一的IP之前,它到达你。 您可以通过插入与服务器相同的VLAN并击中辅助IP来完成此操作。

在IIS中,它可能听起来很挑剔,但Web站点不会向外传输; 在网站容器中托pipe的应用程序可以。

编程您的应用程序使用特定的IP,它会发生。 IIS不直接提供出站通信API,所以它不会帮助你。