The following information was retrieved November 5, 1995 from www.microsoft.com. Read how I got this working, and my other Technotes

Using RAS for Routing of IP Packets

ARTICLE ID: Q121877

The information in this article applies to: - Microsoft Windows NT Workstation versions 3.5 and 3.51 - Microsoft Windows NT Server version 3.5 and 3.51
SUMMARY


The first part of this article covers the following supported features: - Features and limitations of Windows NT RAS routing. - Conditions to be met for Windows NT RAS routing to work. - Configuring a Windows NT RAS client to route over a RAS link. - Troubleshooting a Supported RAS Routing configuration. The second part of this article covers the following unsupported features: - Windows NT to Windows NT RAS routing (unsupported, but possible). - Diagram of Windows NT to Windows NT RAS routing (with two subnets only). - Summary table of Windows NT to Windows NT RAS routing configuration. - Configuring Windows NT to Windows NT routing.
MORE INFORMATION


Features and Limitations of RAS Routing
The Windows NT 3.5 Remote Access Services (RAS) client has a new feature that allows it to function as a router between two different networks. However, it supports only local and non-subnetted routing; there is no support for interrouting protocols such as RIP or OSPF. The ROUTE utility can be used to build static routes into your system's routing table. ROUTE.EXE is installed in the %systemroot%\SYSTEM32 directory when you install TCP/IP under Windows NT (see Windows NT version 3.1 [not 3.5] Resource Kit, Volume 1, page 661, ISBN 1-55615-598-0). Conditions to be Met for RAS Routing to Work
The following conditions have to be met in order to use this new feature: - The RAS server must be a third party PPP or SLIP server. (Windows NT 3.5 RAS is currently not designed to support LAN to LAN routing.) - The third-party RAS server must support routing tables that can be configured to forward packets to the LAN connected over the Windows NT 3.5 RAS client link. - TCP/IP is the protocol on both sites. - The IP subnet address of the local LAN is different from the IP subnet address of the RAS connection. - If connecting your local LAN to the Internet, your LAN must use a registered IP address. Configuring a Windows NT RAS Client to Route over a RAS Link
If these conditions above are met, you need to configure the Windows NT 3.5 or 3.51 RAS client as follows to allow it to function as a router. 1. Configure RAS for either PPP or SLIP. a. Run Remote Access and choose Edit. b. Choose the Advanced button if it is displayed. c. Choose Network. d. Select either PPP (using TCP/IP) or SLIP for communication with the third-party RAS server. 2. Modify the DisableOtherSrcPackets registry value that, by default, is set to disable this functionality. DisableOtherSrcPackets is located in the HKEY_LOCAL_MACHINE subtree under the following subkey: \System\CurrentControlSet\Services\RasArp\Parameters It has a data type of REG_DWORD and can be set to 0 or 1. It controls the routing of IP packets with an IP source address other than the IP address of the RAS network adapter card. Set to 0, packets with source addresses other than the IP address of the RAS adapter will be sent. Set to 1, packets with source addresses other than the IP address of the RAS adapter will not be sent. The default setting is 1. NOTE: Page 420 of the "Windows NT 3.5 Resource Kit, Volume II" incorrectly states that the default setting is 0. 3. Enable the IpEnableRouter value. IpEnableRouter is located in the HKEY_LOCAL_MACHINE subtree under the following subkey: \System\CurrentControlSet\Services\Tcpip\Parameters It has a data type of REG_DWORD and can be set to 0 or 1. Change the value to 1 to enable this parameter. A value of 0 disables IP routing. 4. The Default Gateway for the network card on the RAS client's computer should be blank. 5. The local LAN clients must set their Default Gateway to the network card IP address of the Windows NT RAS client. 6. You must set up a static route on the third party PPP or SLIP server that routes traffic destined for the RAS client s local LAN via the RAS IP address of the RAS client. Troubleshooting a Supported RAS Routing Configuration
To troubleshoot routing problems between the Windows NT RAS client and the third party RAS server, use Windows NT RAS Monitor on the RAS client. RAS Monitor starts automatically when the Remote Access client is started, unless that option was disabled in the Options menu of Remote Access. If you ping the PPP or SLIP server from a local LAN client, you should see the transmit light of RAS Monitor flash four times. If so, the packets are being routed properly by the Windows NT RAS client and you should go back to step 6 and ensure the third party RAS server is configured for the correct route. Windows NT to Windows NT Routing (Unsupported, But Possible)
WARNING: The current version of Windows NT was not designed to provide Windows NT to Windows NT routing functionality. Use the following information with the understanding that Microsoft makes no guarantees that this works reliably. You cannot get support if there are problems with this configuration. If you have a problem, you need to reproduce the problem under a supported configuration to get support. If the problem only occurs in the unsupported configuration, we recommend that you restore your network to a supported configuration. This feature is under review and will be considered for inclusion in a future release. Windows NT to Windows NT routing was successfully tested in the Microsoft Product Support Services lab with only one subnet on each side of the RAS link. It was not stress tested. Configurations with more subnets on either side of the RAS link may be possible, but the configuration becomes increasingly complex (and has not been tested), because Windows NT 3.5 has no support for interrouting protocols such as RIP or OSPF. Therefore, many more routes need to be established by using the Route command on the Windows NT RAS server or by configuring a router. Diagram of Windows NT to Windows NT RAS Routing (with Two Subnets Only)
The following is a diagram of the lab setup that was tested: NOTE: The aaa and bbb in the TCP/IP addresses represent the three decimal digits of the first part of a regular four-part TCP/IP address. They are used to protect you from using an actual TCP/IP network address that is in use on the Internet or in your company. Be sure to replace all TCP/IP addresses in this example with your own addresses. Single Client Server Single Subnet--ether--NT3.5Ras-----PPP/TCP/IP-----NT3.5Ras---ether---Subnet Subnet_A Subnet_A Subnet_B Subnet_B aaa.180.90.1 aaa.180.90.2 bbb.8.0.1 bbb.8.0.2 Def. Gtwy: Def. Gtwy: Def. Gtwy: Def. Gtwy: aaa.180.90.2 aaa.180.90.2 bbb.8.0.1 bbb.8.0.1 (=RAS client) (its own address!) (its own addr!) (=RAS Svr) RAS: Subnet_C range: bbb.88.89.1 - 2 RAS: Subnet_C RAS: Subnet_C bbb.88.89.2 bbb.88.89.1(1st in range) Summary Table of Windows NT to Windows NT RAS Routing Configuration
The following table summarizes the configuration: RAS Client RAS Server
On single subnet without On single subnet without routers routers Ethernet TCP/IP address Ethernet TCP/IP address for Subnet_A for Subnet_B RAS PPP with TCP/IP RAS PPP with TCP/IP (not SLIP) Decide which TCP/IP addresses to use exclusively for a RAS Subnet_C Check "Require Specific IP In Control Panel specify RAS server Address" and enter address TCP/IP range of at least 2 addresses (the 1st always owned by RAS server) Check "Use Default Gateway On Remote Network" DisableOtherSrcPackets: 0 DisableOtherSrcPackets: 0 IpEnableRouter: 1 IpEnableRouter: 1 Set the local LAN clients' Set the local LAN clients' Default Gateway to the Default Gateway to the RAS client's Subnet_A address RAS server's Subnet_B address (not Subnet_C!) (not Subnet_C!) Manually add a Route to routing table See step 6 below. NOTE: To add the route to the RAS server's routing table, follow this pattern when typing the Route command: Route add <Subnet_A_Address> MASK <subnet mask> <RasClientAddress>The following is an example with fictitious class C subnet addresses: Route add aaa.180.90.0 MASK 255.255.255.0 bbb.88.89.2where aaa and bbb in the TCP/IP addresses represent the three decimal digits of the first part of a regular four-part TCP/IP address. This command tells the RAS server to get to Subnet_A (aaa.180.90.0) forward packets addressed to it to the RAS client (bbb.88.89.2) on Subnet_C. The RAS client knows about Subnet_A (aaa.180.90.0) automatically during boot up because its Ethernet card is on Subnet_A and IpEnableRouter is enabled. Configuring Windows NT to Windows NT Routing
To configure Windows NT to Windows NT routing over RAS between two single subnets: 1. Configure the RAS server for Subnet_C TCP/IP addresses for assignment to RAS clients. a. On the RAS server, run Control Panel and choose Network. b. Select Remote Access in the Installed Network Software list box. c. Choose Configure. d. Choose Network. e. In the Server Settings choose Configure for TCP/IP. f. Select the Use Static Address Pool radio button. g. Enter a TCP/IP subnet address in the Begin and End text boxes. These two addresses must be consecutive or in a range of several consecutive addresses. They must not belong to the same subnet of the local LAN, nor the RAS client's LAN. For example, bbb.88.89.1 through bbb.89.88.2 are valid addresses for the lab setup above. The first address of this range will belong to the RAS server so that it will end up with two IP addresses: one for RAS and one for the Ethernet card configured in the regular TCP/IP configuration. 2. Configure the RAS client to use TCP/IP, request a specific TCP/IP address, and use the server's default gateway. a. Run Remote Access and choose Edit. b. Choose the Advanced button if it is displayed. c. Choose Network. d. Select PPP and check TCP/IP. Do not select SLIP for communication with the Windows NT RAS server. e. Choose TCP/IP Settings. f. Choose Require Specific IP Address and enter the second IP address in the IP range specified on the RAS server in step 1. In the example above that would be bbb.88.89.2. g. Then check the Use Default Gateway On Remote Network box at the bottom. 3. On the RAS server and the RAS client, set DisableOtherSrcPackets to 0 (zero) in the Registry as described above. 4. On the RAS server and the RAS client, set IpEnableRouter to 1 in the Registry as described above. 5. Reboot the RAS server.6. Add the route to the RAS server as explained above in the note at the bottom of the table above. 7. The local LAN clients of Subnet_A must set their default gateway to the Subnet_A network card IP address of the Windows NT RAS client. 8. The local LAN clients of Subnet_B must set their default gateway to the Subnet_B network card IP address of the Windows NT RAS server. NOTE: A machine on Subnet_A should not call into the RAS server on Subnet_B while the Windows NT RAS client on Subnet_A is connected to the RAS server on Subnet_B. This can be prevented if a Subnet_C range of only two IP addresses is specified or only one modem is installed on the server. However, if this situation occurs, you will get unpredictable results. KBCategory: kbnetwork kbfasttip KBSubcategory: ntras nthowto ntregistry Additional reference words: point-to-point prodnt 3.50 3.51

Registry Value for Routing PPP Packets Incorrect

ARTICLE ID: Q126008

The information in this article applies to: - Microsoft Windows NT Workstation version 3.5 - Microsoft Windows NT Server version 3.5 - Microsoft Windows NT Resource Kit version 3.5
Page 420 (Chapter 22: Remote Access Service and the Internet) of the Windows NT version 3.5 Resource Kit Networking Guide states the following concerning the DisableOtherSrcPackets registry entry: Since the packets that come from LAN clients are not originating from the RAS computer, you must set DisableOtherSrcPacket to 1 so the header sent over the PPP link retains the IP address of the LAN clients. This is incorrect. In order for the header sent over the PPP link to retain the LAN client IP address, you must set the DisableOtherSrcPackets value to 0. The default value is 1. Also note that the text refers to DisableOtherSrcPacket (singular). The correct entry is DisableOtherSrcPackets (plural). KBCategory: kbdocerr KBSubcategory: ntdocerr ntreskit Additional reference words: prodnt 3.50 ras point-to-point zero

Troubleshooting TCP/IP LAN and RAS Routing Issues

ARTICLE ID: Q128647

The information in this article applies to: - Microsoft Windows NT Workstation versions 3.5 and 3.51 - Microsoft Windows NT Server versions 3.5 and 3.51
SUMMARY


You may not be able to ping or otherwise connect to computers across a router using the TCP/IP protocol while you are connected as a RAS client to a remote Windows NT 3.5 Remote Access Service (RAS) server.
CAUSE


This problem occurs if you have "Use default gateway on remote network" selected under TCP/IP settings in the RAS Phonebook. This feature adds a route to the route table. The new route allows IP addresses that are not resolved by other entries in the route table to be routed to the gateway on the RAS link. To use Internet utilities, such as a WEB browser or FTP, this feature must be enabled.
MORE INFORMATION


You can observe the change to the default route in the route tables by using the Route Print command at the Windows NT Command Prompt. For example, if you make a connection with RAS and issue the Route Print command, the first line of the IP routing table will look like the following (actual Gateway and Interface values will vary): Network Address Netmask Gateway Address Interface Metric 0.0.0.0 0.0.0.0 199.199.41.1 199.199.41.254 1 This first line is the natural default path to the local LAN gateway. If you connect with RAS to the remote Windows NT 3.5 RAS server, the first two lines of the Route Print command will appear as follows: Network Address Netmask Gateway Address Interface Metric 0.0.0.0 0.0.0.0 199.199.41.1 199.199.41.254 2 0.0.0.0 0.0.0.0 199.199.32.15 199.199.32.15 1 The metric value represents the number of hops a packet must take to its destination. Because the new route to the default Gateway is shorter (metric value 1), it becomes the preferred path. If you try to use the Route Delete command to erase the RAS default gateway, the second line is removed. RAS replaces the first line with the RAS default gateway path. As a result, it looks like the first line of the table is deleted instead of the second line. For example, when you try to delete the second line of the above table, the result is: Network Address Netmask Gateway Address Interface Metric 0.0.0.0 0.0.0.0 199.199.32.15 199.199.32.15 1
RESOLUTION


To use TCP/IP utilities, leave the "Use default gateway on remote network" selection turned on. Use the Route Add command to add the route of the subnet you are attempting to use and tie that route to the local gateway. For example, if the computer you are connecting to has an IP address of 11.1.0.3, add following command to the route table: Route: add 11.0.0.0 MASK: 255.0.0.0 199.199.41.1 This addition causes all frames bound for the 11.x.x.x subnet to be processed through the local LAN gateway on the local network. The result is as follows: Network Address Netmask Gateway Address Interface Metric 0.0.0.0 0.0.0.0 199.199.41.1 199.199.41.254 2 0.0.0.0 0.0.0.0 199.199.32.15 199.199.32.15 1 11.0.0.0 255.0.0.0 199.199.41.1 199.199.41.254 1 KBCategory: kbnetwork KBSubcategory: nthowto ntras nttcp Additional reference words: 3.50 3.51 prodnt

Enabling IP Routing

ARTICLE ID: Q99686

The information in this article applies to: - Microsoft Windows NT operating system version 3.1
This article describes how to enable IP routing in Windows NT and how to configure static routing tables using ROUTE.EXE. How to Enable IP Routing
Routing between subnets is disabled by default for the TCP/IP protocol in Windows NT. To enable routing, following these steps: WARNING: Using Registry Editor incorrectly can cause serious, system-wide problems that may require you to reinstall Windows NT to correct them. Microsoft cannot guarantee that any problems resulting from the use of Registry Editor can be solved. Use this tool at your own risk. 1. Start Registry Editor (REGEDT32.EXE) and go to the following subkey: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip \Parameters 2. From the Edit menu, choose Add Value. 3. Enter the following values: Value Name: IpEnableRouter Data Type: REG_DWORD Value: 1 4. Exit Registry Editor and restart Windows NT. Configuring Static Routing Tables
If two subnets are separated by more than one Windows NT machine or by a router, Windows NT can route between the subnets if you manually configure the routing tables. Static configurable routing is supported, but neither routing information protocol (RIP) or OSPF are supported. The ROUTE.EXE command manually configures network routing tables. ROUTE has the following syntax: route [-fs] [command [destination][gateway]] Switches
-f Clears routing tables -s Packets for which no destinations are found are routed to the smart gateway. Commands
add Adds a route delete Deletes a path print Prints a route change Changes an existing route All symbolic names used for gateway and destination are looked up in the database files NETWORKS and HOSTS. KBCategory: kbfasttip kbnetwork KBSubCategory: ntnetserv nttcp Additional reference words: prodnt 3.10 tcp/ip
THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 1995.

Back to Home Page  / Return to Sturtevant Technotes

Reed Sturtevant
<reed@sturtevant.com>