我正在努力将我们的服务器迁移到新的IP范围(存在于新网络中),所以我添加了第二条虚拟网络线,然后我将新IP添加到。我们使用IIS 7.5作为Web服务器,在Windows 2008 R2上使用多个IP在一个CF9安装上运行多个网站。我目前正在使用我们的开发服务器测试该流程,然后再转到各种生产服务器。
以前的行为 - 当只有一个网卡时,ColdFusion会将自身绑定到系统的根IP,即使它有多个IP。这很有用,因为我们可以获得到该内部IP的静态IP映射,因此该单个IP可以允许任何从网络到外部资源(FTP,SQL等)的出站调用。这已经使用了5年以上的CFMX / CF7 / CF8 / CF9。
新行为 - 添加额外的网络线路后,向其添加IP,然后重新启动机器ColdFusion现在已选择要绑定到的新接口上的各种IP之一。它所绑定的IP甚至不是该网卡的根IP。这导致所有出站呼叫现在被阻止,因为它们不再来自它们最初来自的特定IP。
问题 - 如何在启动时将ColdFusion 8/9绑定到单个特定IP,以便确保它始终在同一IP上进行出站通信?我已经做了很多搜索并查看了CF本身的各种文件,但我没有找到一个很好的资源或答案如何专门做到这一点。
答案 0 :(得分:1)
听起来你正在jRun上运行ColdFusion 8和9--这是Adobe ColdFusion的默认servlet容器。查看jRun文档http://www.adobe.com/support/documentation/en/jrun/index.html#manuals。我记得看到一些关于BindAddress的东西,其默认值为“*”。
希望这有帮助。
来自OP的解决方案 - 通过这些信息,我可以解决这个问题。
这些是执行此操作所需的步骤。
\runtime\servers\coldfusion\server-inf\jrun.xml
Locate the section relating to port 51800 and within that section add the following using the specific IP;
<attribute name="BindAddress">1.1.1.1</attribute>
Restart the CF Application Service
\runtime\lib\wsconfig\1\jrun_iis6_wildcard.ini
Change the bootstrap info to match your IP;
bootstrap=127.0.0.1:51800 -> bootstrap=1.1.1.1:51800
\runtime\lib\wsconfig\wsconfig.properties
Change the srv value to match your new IP;
1.srv=localhost,"coldfusion" -> 1.srv=1.1.1.1,"coldfusion"