When multiple default gateways are used in TCP/IP configuration options ona Windows NT computer, connectivity to computers on remote networks may belost. On multihomed computers connected to disjointed networks, staticroutes may be added to the routing table to get connectivity to remotenetworks.
Windows NT computers can be configured with multiple default gateways. Whena dead gateway is detected by TCP, it can direct IP to switch defaultgateways to the next gateway in the backup list. This switch can occur whenthere are multiple gateways configured for the same network adapter or whendifferent default gateway addresses are given on various network cards on amultihomed computer. A switch is triggered when TCP has tried one-half ofthe TcpMaxDataRetransmissions times to send a packet through the currentdefault gateway.
For more information on dead gateway detection and registry parameterTcpMaxDataRetransmissions, please see the following Microsoft KnowledgeBase articles:
TITLE : Dead Gateway Detection in TCP/IP for Windows NT
TITLE : How to Optimize Windows NT to Run Over Slow WAN Links w/TCP/IP
After the switch, all IP traffic originating from any network adapter onthis computer destined for remote networks will be sent to the currentlyselected gateway. On disjointed networks, this can lead to lostconnectivity and subsequent termination of active sessions with computerson remote networks connected through the first gateway. This is because thecurrently selected gateway may be unaware of other routes managed by thefirst gateway if those routers do not exchange routing information to eachother.
If the switched gateway is unreachable or inactive on the network, it losesconnectivity to all remote sites. At this point, a ping to this computerfrom a remote network will fail to get a positive response. Similarly, anyoutgoing ping to a remote host from this computer will give a Request timedout error. This behavior is by design and conforms to TCP/IPspecifications.
The following illustrations describe situations where multiple gateways areused.
Consider a computer with two network cards, Netcard1 and Netcard2, and thefollowing IP addresses and default gateways:
Netcard1: IP Address: 220.127.116.11 Mask: 255.255.0.0 Default Gateway: 18.104.22.168 22.214.171.124Netcard2: IP Address: 126.96.36.199 Mask: 255.255.0.0 Default Gateway: 188.8.131.52
If you want to Telnet to a workstation with an IP address of 184.108.40.206,the IP datagrams will be routed through the 220.127.116.11 gateway. If18.104.22.168 is detected as unavailable, IP switches to the second gateway22.214.171.124. When this gateway fails, then use 126.96.36.199, and so on. Thisapplies only to TCP traffic and switching gateways occurs based on themechanism described earlier. Telnet, FTP, and NetBIOS Session servicenetwork traffic use TCP for network communications.
Also consider where the two networks connected to Netcard1 andNetcard2 are disjointed (that is, not connected to each other through anyother router). If there is a network (say 22.101.x.x) that is accessibleonly through Netcard2, the IP datagrams for this network will still berouted through 188.8.131.52 because it is the primary default gateway. Toroute IP datagrams destined to network 22.101.x.x through 184.108.40.206, astatic route needs to be added to the routing table through the ROUTEutility. To add the route, type the following command: route add 220.127.116.11 MASK 255.255.0.0 18.104.22.168
Another possible solution for the above scenario is to run multiprotocolrouting on the multihomed Windows NT computer so it can exchange routinginformation with other routers on the network running Routing InformationProtocol. Multiprotocol routing is available in Windows NT 3.51 ServicePack 2 or later.
For further information, please reference the following Microsoft KnowledgeBase article:
ARTICLE ID: 171564
TITLE : TCP/IP Dead Gateway Detection Algorithm Updated for Windows NT