Configuring the IP Inclusion List

Applies To: Windows Server 2003, Windows Server 2003 with SP1

The HTTP.sys IP inclusion list allows administrators to limit the IP addresses to which HTTP.sys automatically binds when it starts. This provides functionality similar to the functionality provided by the DisableSocketPooling property that was available in IIS 5.0. At startup, HTTP.sys checks to determine if there are any entries in the IP inclusion list. If there are, HTTP.sys attempts to listen only on these IP addresses and only at initial startup. If the list has no entries, HTTP.sys listens on all available IP addresses.

To configure the IP inclusion list, use the HttpCnfg.exe utility. For information about HttpCfg.exe, see Httpcfg.exe: HTTP Configuration Utility.

Table 11.15   HTTP.sys IP Binding Event Log Errors lists and describes the HTTP.sys IP binding event log errors. Only the errors that require additional explanation are addressed below.

Table 11.15 HTTP.sys IP Binding Event Log Errors

Event ID Description

15005

Unable to bind to the underlying transport for %2. The IP Listen-Only list might contain a reference to an interface that might not exist on this computer. The data field contains the error number.

15007

Reservation for the namespace identified by URL prefix %2 was successfully added.

15008

Reservation for namespace identified by URL prefix %2 was successfully deleted.

15009

An error occurred while initializing namespace reservations. The error status code is contained within the returned data.

15010

An error occurred while initializing a namespace reservation identified by URL prefix %2. The error status code is contained within the returned data.

15014

Unable to convert IP Listen-Only list entry %2. The data field contains the error number.

15015

Unable to convert all entries on IP Listen-Only list. The driver will listen on all available interfaces.

Event ID 15014

If the IP inclusion list contains entries, HTTP.sys iterates through the list and, for each entry, it first checks to ensure that the IP address is valid and is assigned to one of the systems network interfaces. If this check fails, HTTP.sys logs Event ID 15014 to the event log.

Event ID 15015

This error is logged to the event log when HTTP.sys parses the IP inclusion list and finds that all of the entries in the list are invalid. If this happens, as the description in Table 11.15 notes, HTTP.sys listens to all IP addresses.

Services that use the HTTP listening functionality — namely IIS — have to configure HTTP and, through available APIs, tell HTTP.sys which endpoints to listen to. If a service requests an endpoint where HTTP.sys is not listening, HTTP.sys logs an event to the event log that states this. In the case of IIS, the WWW service also makes note of these kinds of errors.

Note

Once the IP inclusion list is set, HTTP.sys never reverts to listening on all IP addresses.