Windows – How to troubleshoot port forwarding on Windows 7 (64 Bit) with ICS enabled

connection-sharingport-forwardingwindows 7

I want to forward some ports (1666 for perforce, 8081 for Hudson) on my Internet Gateway machine. This machine is running Windows 7 (64 Bit, legal, user-account) and connected to the Internet via cable modem (it's not a router). The Windows machine is sharing its Internet Connection via ICS and that works fine on all connected computers.

I can access the services via the gateway's public IP (95.x.x.x) on the given ports if they are running on the gateway machine itself. I've added the ports and destination IP address ( in the Internet network adapter's Advanced Settings dialog (Sharing tab). That's the same dialog where you have a list of preconfigured services like HTTP, FTP and other incoming services. When I do that I can't connect to the services anymore. For some reason port forwarding isn't working.

I have uninstalled Bitdefender because I wanted to check if the Firewall interferes. I've also disabled the Windows Firewall and Defender to no avail. I tried a freeware tool that helps to setup port forwarding but that didn't work either.

The target machine is a Mac OS X computer whose Firewall is disabled. The IP is static. I can successfully connect to the services using the local IP address ( from two different machines, including the gateway computer. So internally and externally it seems to me that the ports are open and not blocked, and the issue is with port forwarding itself.

From what I understand it should be enough to add an entry to the Advanced Settings dialog to enable port forwarding when there are no firewalls interfering. How can I troubleshoot why port forwarding isn't working for me? What steps should I follow to alleviate the issue?

PS: I gladly accept command line solutions.

Other things I've tried:

  • adding an Inbound Rule to Windows Firewall for the 1666, 8081 ports
  • trying with Windows Firewall enabled and disabled
  • disabling/enabling the network adapter
  • double-checked that the IP addresses are correct
  • mapping a different incoming port to the service's actual port
  • followed or checked the misc tips in this article

What I haven't dared trying yet (let me know if it's worth a shot):

  • disable/enable ICS
  • remove all network adapters (via Control Panel), then re-install and re-configure them

Best Answer


After resetting the Windows Firewall to default settings, and disabling ICS and re-enabling it, I was able to get port forwarding to work but not without using the Passport tool which installs port forwarding as a Windows service (you have to run it with Admin privileges).

The good thing about Passport is that you can port forward DNS addresses as well, not just IP addresses. So something like this is possible through Passport's interface: -->
Related Question