NWLink IPX/SPX: Network Number vs. Internal Network Number (150546)



The information in this article applies to:

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0
  • Microsoft Windows NT Server 3.5
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0

This article was previously published under Q150546



IMPORTANT: This article contains information about editing the registry. Before you edit the registry, make sure you understand how to restore it if a problem occurs. For information on how to do this, view the "Restoring the Registry" online Help topic in Regedit.exe or the "Restoring a Registry Key" online Help topic in Regedt32.exe.

SUMMARY

The NWLink IPX/SPX-compatible transport in Windows NT uses two distinctly different types of network numbers. Windows NT uses an IPX network number for routing purposes. This number is assigned to each configured frame type and adapter combination on your computer. This number is sometimes referred to as the "external network number," and it must be unique for each network segment. Windows NT also uses an internal network number for internal routing purposes. The internal network number is also known as a "virtual network number." The internal network number uniquely identifies the computer on the inter-network. These two network numbers serve two distinctly different functions.

MORE INFORMATION

Network Number

You must assign an IPX network number for each frame type configured on each adapter in your computer running Windows NT. This network number must be unique for each network segment. Thus, all computers on the same segment using a given frame type must use the same network number to communicate with each other. If you do not set such a value for the IPX network number in the registry, the NetworkNumber parameter displays a value of "0", but the number itself will be assigned by Windows NT through autodiscovery.

Here are some possible ways of discovering the correct network number to use for a given frame type:

- From a command prompt on a computer running windows NT Workstation or Server, run the IPXROUTE CONFIG command.

- At a NetWare server that you want to communicate with, run the CONFIG command or inspect the Autoexec.ncf file.

You cannot set the IPX network number, or "external" network number, through the graphical user interface on Windows NT 3.51, unless you have File and Print Services for NetWare (FPNW) installed. You can set the IPX network number in the registry. But if you manually configure the external network number, you must be careful if there are any changes to your network segment. If the network number on this segment changes or you move the computer, you may not be able to communicate over IPX.

The NetworkNumber key (NetworkNumber: REG_MULTI_SZ) specifies the network number to be used for this adapter. If it is 0, NWLink gets the network number from the network as it is running. A nonzero value will force the use of that number as the external network number for the specific frame type. IPX network numbers are 4 bytes (8 hex characters) long. It is possible to be running multiple IPX networks over the same physical network segment provided they are different frame types.

The frame type is set by registry key (PktType: REG_DWORD). NWLink supports Ethernet, Token Ring, FDDI, and Arcnet topologies. The PktType parameter specifies the packet form to use. The valid values are:

0 (Ethernet II)
1 (Ethernet 802.3)
2 (802.2)
3 (SNAP)
4 (Arcnet)

If your adapter is an Ethernet adapter, select between 0 and 3. If the adapter is Token Ring or FDDI, select option 2 or 3. If you are using an Arcnet adapter, select option 4. If the adapter is a Token Ring or FDDI adapter, values 0 and 1 will work the same as value 2. (Related parameter: BindSap.)

To set the IPX network number:

WARNING: Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk.

For information about how to edit the registry, view the "Changing Keys And Values" online Help topic in Registry Editor (Regedit.exe) or the "Add and Delete Information in the Registry" and "Edit Registry Data" online Help topics in Regedt32.exe. Note that you should back up the registry before you edit it.

Setting a network number in the registry for a given frame type involves setting two corresponding values, one for NetworkNumber and the other for PktType. The value for PktType must be set to a value other than the default value of FF in order for the value NetworkNumber to be used.

To set the network number for a frame type:
  1. Open Registry Editor (Regedt32.exe).
  2. Go to this location in the registry: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services \NWLnkIPX\NetConfig\<adapter name>

    NOTE: The above registry key is one path; it has been wrapped for readability.
  3. Edit the NetworkNumber and PktType parameters either by clicking the parameter or by selecting "Multi String" on the Edit menu.
  4. Enter an eight-digit hexadecimal number as a NetworkNumber value for each corresponding PktType.


Please check the "Services for NetWare Networks" booklet referenced below for more information on these settings.

Internal Network Number

The internal network number identifies a virtual network segment inside of your computer. That is, the internal network number identifies another (virtual) segment on the internetwork. So, if you configure an internal network number for a computer running Windows NT, a NetWare server or a router will add an extra hop in its route to that computer.

The function of the internal network number parallels the function of the internal IPX network number on a NetWare server. The internal IPX network number on a NetWare file server assigns a "logical" network for the server that helps to uniquely identify the server in a multiple network environment.

Windows NT does not autodetect the internal network number. In certain cases, you may need to manually set a unique nonzero, internal network number. You may need to do this for one or more of the following reasons:

- You choose to use multiple frame types on a single adapter.

- You have bound NWLink to multiple adapters on your computer running Windows NT.

- Your computer is acting as a server running Windows NT for an application that uses the NetWare Service Advertising Protocol (SAP), such as SQL Server or Systems Network Architecture (SNA) Server.

By default this number is always zero (0) unless you have FPNW installed and choose multiple frame types or have NWlink bound to multiple adapters in your computer. If you try to leave the internal network number set to zero with FPNW configured for multiple frame types, you may receive the following error message:
In the current configuration the Internal Network Number cannot be 0. A random Internal Network Number has been chosen for you. Please make sure this does not conflict with any other Network Number or select another unique number.

So, in most cases, the Windows NT internal network number is not present as a packet on the LAN segment. The default value of zero (0) for the internal network number does not show up when you run the IPXROUTE CONFIG command at a command prompt. However, if you have configured such an internal network number, or FPNW has assigned one to your computer, then you may see this internal network number in a trace of a RIP or a SAP broadcast from your computer. The internal network number is not automatically announced to the inter-network.

The internal network number is an eight-digit hexadecimal number with allowed values in the range of 1 to FFFFFFFE, and this number has to be unique across the inter-network. The parameter used to set this number is the VirtualNetworkNumber parameter. To change the value for this parameter follow these steps:

WARNING: Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk.

For information about how to edit the registry, view the "Changing Keys And Values" online Help topic in Registry Editor (Regedit.exe) or the "Add and Delete Information in the Registry" and "Edit Registry Data" online Help topics in Regedt32.exe. Note that you should back up the registry before you edit it.
  1. Open Registry Editor (Regedt32.exe).
  2. Go to the following Registry location: HKEY_LOCAL_MACHINE\SYSTEM\CurrentcontrolSet\Services \NWLnkIPX\Parameters

    NOTE: The above registry key is one path; it has been wrapped for readability.
  3. Edit the VirtualNetworkNumber parameter by double-clicking the value or selecting DWORD under the Edit menu.
  4. Enter a unique, nonzero, eight digit hexadecimal number for a value.
Notice that, although the internal network number is associated with internal routing on your computer running Windows NT, the internal network number does not facilitate IPX routing between separate segments configured on a single Windows NT workstation or server. Windows NT does not natively act as an IPX router. For that added functionality, you will need to install the Microsoft Multi-Protocol Router (MPR) product.

Windows NT version 4.0

In Windows NT version 4.0, you can change both the (external) network number and internal network number through the graphic user interface (GUI) in Control Panel. To do so, follow these steps:

To set or change the external network number:
  1. Click Start, click Settings, and then click Control Panel.
  2. Double-click Network, click Protocols, and then double-click NWLink IPX/SPX Compatible Transport.
  3. Select the appropriate adapter in the Adapter list, and then click the Manual Frame Type Detection radio button.
  4. Click Add, select the correct frame type, and then type your unique (external) network number as specified above for Windows NT 3.51.


To set or change internal network number:
  1. Click Start, click Settings, and then click Control Panel.
  2. Double-click Network, click Protocols, and then double-click NWLink IPX/SPX Compatible Transport.
  3. Type a unique (internal/virtual) network number in the Internal Network Number.
For additional information on setting the internal network number in Windows NT, see the following article in the Microsoft Knowledge Base:

99745Tuning NWLINK Registry Parameters

REFERENCES

"File and Print Services for NetWare, Participant's Workbook," PSS-WWT, 6/14/94 revision, Module 2: pg. 2-7.

FPNW.HLP, File and Print Services for NetWare, version 3.51, %SYSTEMROOT%\SYSTEM32\FPNW.HLP.

"Services for NetWare Networks: Microsoft Windows NT Server," version 3.5, pgs. 114-115.

"Windows NT 3.5 Upgrade Course, Participant's Workbook," PSS-WWT, 8/2/94 revision, pgs. 127-131.

Modification Type:MinorLast Reviewed:4/28/2004
Keywords:kbinfo kbinterop KB150546