Windows 2012 R2 IIS 8.5.9600.16384 and Google Go Webservice in parallel

iis-8windows-server-2012-r2

My network adapters are using three IP4 addresses:

  • a
  • b
  • c

The IIS runs two sites: A, B and the binding is

  • A>a:80
  • B>b:80
  • B>b:443

I configured the IIS to listen to a and b as follows:

  • netsh http add iplisten ipaddress=a:80
  • netsh http add iplisten ipaddress=b:80
  • netsh http add iplisten ipaddress=b:443

The command netsh http show iplisten shows:

  • a
  • b

The Google Go Webservice runs on IP4 address:

  • c

Situation: This config runs fine on Windows 2008 R2. On Windows 2012 R2 it seems to run at first BUT after restarting the server the Google Go Webservice is running but the sites A and B are stopped. However I can start them manually and all three sites are operational again.

Approach 1: The sites A and B are running. Now I disable the Google Go Webservice and restart the service. But the sites A and B are still stopped after the restart.

Approach 2: (the Go Webservice is still disabled) I now add the global IP address 0.0.0.0 for the IIS to listen. So netssh http show iplisten shows: 0.0.0.0, a, b. After the restart the sites A und B are still running. However listening on 0.0.0.0 does prevent the Google Go Webservice from running because his IP and port is now blocked by the IIS.

Question: Why does the IIS need the 0.0.0.0 IP address to start the sites? To me this looks like a flaw in Windows Server 2012 R2. In the IIS8.5 I found other flaws as well so I would not be surprised – for example you can not use the character ? in the naming of the standard website anymore which is problematic with some of our ISAPI modules (you can write xy.dll but not xy.dll?start). What can I do now to make the three sites run simultanously? Thanks for your support.

Best Answer

Would it be enough to have a batch script start them all up after the system comes up? Maybe not the most elegant solution, but it should work.

Related Topic