1

For reasons that are lost in the mists of time, our older Windows (2000, 2003) servers have been configured with a "Administrative" IP address and three further "Hosting" IP addresses. There are also additional IP's for sites with SSL certificates.

The "Administrative" IP address is where all our internal provisioning, monitoring and other such apps are bound to. We lock this down and don't permit access to it from the outside world (other than over our VPN).

The three "Hosting" IP addresses are used for IIS website hosting (in conjunction with host headers).

Historically, new site IP address allocations have been rotated through these three IP addresses. I'm not really sure why.

I'm building a new batch of servers and I'm considering just having a single hosting IP address.

Our servers can host up to 1200 sites on a single machine.

Is there a technical limit to the number of IIS sites that can bind to a single IP address? Our Linux platform seems to do just fine with just a single shared IP + host headers.

I initially thought this might be an SEO thing, but given that IPv4 address space conservation is paramount I hardly think Google or other search engines could reasonably penalise site rankings just because hundreds of sites hang off the same IP.

2 Answers 2

2

From a (now broken) IIS FAQ at TechNet:

Q. Does Web server performance degrade when Web sites use host headers instead of IP addresses?

A. The overhead for IIS to check a host header is negligible compared to the total cost of satisfying an HTTP request, even for a static file. Also, host headers scale better than IP addresses when you host thousands of Web sites on a server.

It doesn't sound like there's a real upper limit to the number of host header sites you can have, but I've yet to find any hard evidence.

6
  • Is there a limit to the maximum number of sockets maybe?
    – Kev
    Jan 7, 2011 at 15:54
  • Of course there is. What the limit is I don't know off hand but it's not infinite, as there is a finite number of resources available. Each session/socket is going to consume some amount of memory and CPU and since those resources are finite then the number of sockets must also be finite.
    – joeqwerty
    Jan 7, 2011 at 16:03
  • 1
    Sure, but host header parsing is a separate thing altogether. I think the point of the FAQ answer was to say "if you're concerned about performance tuning on your IIS server, look elsewhere, because host header parsing ain't the problem".
    – gravyface
    Jan 7, 2011 at 16:04
  • @gravy - thanks for the info. @joe - I'm aware there's going to be a finite limit, I should have been clearer and asked if this limit was a TCP/IP numerical limit (given memory and cpu were unlimited), i.e. does the Windows TCP/IP stack have some arbitrary limit on the number of internal data structures representing sockets/connections?
    – Kev
    Jan 7, 2011 at 17:40
  • No arbitrary limit. Parsing also is not that bad - I parse ID strings hundreds of thousands of times per second in another proejct. THis is done using hash tables which are QUITE efficient. You likely run into a problem with your resources (memory, cpu, mostly socket count) first.
    – TomTom
    Jan 7, 2011 at 17:50
1

Have a look at this link: http://www.it-notebook.org/iis/article/host_headers_vs_ip.htm

It appears to be that using Host Headers is the prefered method.

1

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .