X-Forwarded-For for IIS system requirements
What you need to run Winfrasoft X-Forwarded-For for IIS, and what it works with.
Short answer. IIS 10 on Windows Server 2016, 2019, 2022 or 2025 (64-bit). It runs as an ISAPI web filter, works with HTTP and HTTPS, and works behind any proxy, load balancer or CDN that adds the X-Forwarded-For header.
Which versions of Windows Server and IIS are supported?
| Web server | IIS 10 |
| Operating system | Windows Server 2016, 2019, 2022 or 2025 (64-bit) |
| Filter type | ISAPI web filter |
The earlier version, for Forefront TMG and ISA Server and for IIS 6 to 8.5, is end of life. It's kept for reference on its legacy product page.
How does the filter run?
It registers itself across all IIS web sites, and you can turn it on or off for each site. No IIS restart is needed to activate it. Changes to the Proxy Trust List take effect after IISRESET (see configuring the Proxy Trust List).
What does it work with?
- HTTP and HTTPS, reverse and forward proxies.
- Load balancers and CDNs that add
X-Forwarded-For, including Cloudflare, F5 BIG-IP, AWS Elastic Load Balancing, Azure Application Gateway and Front Door, NGINX, HAProxy, Barracuda and IIS Application Request Routing, and transparent network devices. - Multi-tier chains, such as Cloudflare in front of an F5 in front of IIS: add every tier to the trust list.
Your applications and log format don't change: the real client IP is written into the standard c-ip field. For which header each vendor sends, see which client IP header does your proxy send?.
Frequently asked questions
Does it work on Windows Server 2025?
Yes. The current release supports Windows Server 2016, 2019, 2022 and 2025 (64-bit) with IIS 10.
Does it work on IIS 8.5 or Windows Server 2012 R2?
No. The current release is for IIS 10. The version for older IIS releases is end of life.
Do I have to restart IIS when I install it?
No, the filter activates without an IIS restart. Run IISRESET only after changing the Proxy Trust List.