Internet Connection Sharing on Windows XP

From Free Knowledge Base- The DUCK Project: information for everyone
Revision as of 17:12, 7 January 2008 by Admin (Talk | contribs)

Jump to: navigation, search

Microsoft Windows 98 Second Edition came with ICS "Internet Connection Sharing" as part of the distribution. Previously, individuals wishing to share Internet from one Windows PC to another, with the previous hosting the WAN connection, third party software such as Wingate was necessary. ICS changed all that, or did it?

Microsoft Internet Connection Sharing, or ICS, has been watered down and like so many other lame Microsoft products, Microsoft has intentionally handicapped ICS so that with all of its limitations, it leaves the end user needing more, opening the door to third party software once again.

ICS Microsoft Internet Connection Sharing

Microsoft ICS allows two or more networked computers to share a single Internet connection. ICS makes use of DHCP. ICS routes TCP/IP packets from a small LAN to the Internet. ICS maps individual IP addresses of local computers to unused port numbers in the TCP/IP stack.

You can enable ICS either manually or by using XP's Network Setup Wizard. To do it manually, open the Network and Dial-up Connections folder. Then right click the Internet connection that you want to share and select Properties. Click the Advanced tab, then check Allow other network users to connect through this computer's Internet connection.

ICS has very annoying limitations that were purposely imposed by the Microsoft developers. The original Win98SE ICS could actually do more than the version now distributed with XP.

Limitations

  • there is no way to review DHCP leases using ICS.
  • no provisions for bandwidth limiting
  • server will always have the IP address 192.168.0.1 so the WAN may not use that subnet
  • subnet may not be modified even if the client is static
  • ICS should not be used on a domain controller or DNS server.
  • ICS will conflict with any other DHCP solution
  • ICS conflicts with most VPN solutions

 

Third Party Internet Sharing Software

Here we review only those software solutions that run on Microsoft Windows. Your best option is to use a Linux solution, such as Netfilter and/or IPMasquerade. However, in some instances it is not possible to run linux on the gateway computer (the one with the Internet WAN interface.) Due to the ridiculous limitations in Microsoft's ICS, a good third party Internet Connection Sharing solution is needed. This is something that not only enables Windows as a router (which XP can do with a simple registry hack) but also provide NAT (Network Address Translation) for packet forwarding.

Routix Netcom

When price is a factor (and it is damn hard to find good NAT software for Windows XP that is FOSS) the Routix Netcom software is the best option available!

Routix Netcom: http://www.routix.net/netcom/

Some of the features include packet forwarding, NAT, traffic shaping, Ethernet bridging, and remote management.

Routix Netcom is not free, open source software, and is not freeware. However, the trial version has no limitation on the number of days that you may use it. With it you may also do everything you can with Microsoft ICS and much more (without the stupid ICS limitations.) The only limitation is that there are is a cap on the number of firewall rules you can use (5) unless you register.

PPPShar

(requires Java Virtual Machine)

 

Sharing VIA a Proxy Server

This is different from using NAT / packet forwarding. Microsoft has Proxy software, but it is not free. There are also 3rd party proxy software available.

Microsoft Proxy

Freeproxy

 

How to Enable Packet Forwarding / Make XP Act as a Router

To enable TCP/IP forwarding, follow these steps:

1 Start Registry Editor (Regedit.exe).
2 In Registry Editor, locate the following registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
3 Set the following registry value:
Value Name: IPEnableRouter
Value type: REG_DWORD
Value Data: 1
A value of 1 enables TCP/IP forwarding for all network connections that are installed and used by this computer.
4 Quit Registry Editor.