I'm working on migrating our servers to a new IP range (exists on a new network) so I added a 2nd virtual network line that I then added the new IPs to. We run multiple websites on one CF9 install using multiple IPs on Windows 2008 R2 using IIS 7.5 as the web server. I'm currently working with our development server to test the process before moving to the various production ones.
Previous Behavior - ColdFusion would bind itself to the root IP of the system when there was only one network card even if it had multiple IPs. This was useful because we could get a static IP mapping to that internal IP so any outbound calls off network to external resources (FTP, SQL, etc) could be permitted by that single IP. This has worked for 5+ years of CFMX/CF7/CF8/CF9.
New Behavior - After adding the extra network line, adding IPs to it, and rebooting the machine ColdFusion now has chosen one of the various IPs on the new interface to bind to. The IP it bound to was not even the root IP of that network card. This resulted in all outbound calls now being blocked because they were no longer coming from the particular IP they were originally coming from.
Question - How can I bind ColdFusion 8/9 to a single specific IP when it starts up so that I can ensure it always communicates outbound on the same IP? I've done a bunch of searching and looking into the various files of CF itself but I haven't found a good resource or answer on how to specifically do this.
Sounds like you are running ColdFusion 8 and 9 on top of jRun--the default servlet container for Adobe ColdFusion. Check out the jRun docs http://www.adobe.com/support/documentation/en/jrun/index.html#manuals. I recall seeing something about a BindAddress with a default value of "*".
Hope this helps.
Solution from OP - With that bit of information I was able work through this.
These are the steps needed to do this.
\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"