Compatibility Mode Installation and Configuration
Articles and Tips: article
Worldwide Support Engineer
01 Sep 1998
Read all about Compatibility Mode, a feature of NetWare 5 that facilitates migration and maintains compatibility for IPX-based applications in a native IP environment.
The previous AppNote, "Migrating to Pure IP with NetWare 5," looked at various migration scenarios and strategies to help transition your network to Pure IP. A key component used to migrate to Pure IP, as discussed previously, is Compatibility Mode. This AppNote takes a more in-depth look at Compatibility Mode Server components and covers installation and configuration details.
Maintaining compatibility during migration from current NetWare networks to Pure IP is necessary to ensure that your network continues to function correctly. Compatibility Mode was created to facilitate migration and maintain compatibility between IPX-based applications in a native IP environment.
Compatibility Mode provides a seamless migration of Novell's traditional IPX and NetWare/IP networks into a Pure IP environment. This technology provides for on-demand support for existing IPX applications within a network segment and full support for IP-based and NCP-based applications. Also, Compatibility Mode provides backbone support, which in turn facilitates connecting two disconnected IPX networks across an IP Only network.
Compatibility Mode technology consists of Compatibility Mode redirectors, a protocol Migration Agent (MA), a Bindery population Agent, and the Service Location Protocol (SLP). The combined use of these components creates the on-demand virtual IPX network within the IP network while allowing only IP packets to cross the wire. Moreover, Compatibility Mode provides continuity of communication between IP-based networks and IPX-based networks, and supports SAP and RIP using SLP.
Overview of Components
Migration Agent Component
The Migration Gateway resides on the node which acts as a gateway between the existing network and the Pure IP network. This node should be accessible to all the nodes from both the networks so that the services provided by each of these are fully accessible. All Pure IP servers and clients use this component as a gateway to the IPX segments and vice versa. Migration Gateway provides the following:
Service information about the IPX-based services in the Pure IP segment to the IPX segment
Service information about services in IPX to Pure IP segments
Easy access to IPX-based services being provided in the Pure IP segment in the IPX segment
Easy access to services being provided in the IPX segment in the Pure IP segment
Service visibility and accessibility between IPX networks which are not directly connected but are connected through a Pure IP network (when enabled with backbone support)
Compatibility Mode Server Component
The Server Component supports IPX-based applications in Pure IP Networks, which can be accessed by a Compatibility mode client or server or an IPX client or server.
All basic OS applications behave both as a Pure IP application and as an IPX-based application and advertise themselves accordingly. These services can be used as an IP service by Pure IP Clients and as an IPX service by an IPX-based client.
For example, Compatibility Mode server component enables an NDS synchronization between a Pure IP server and an IPX-based server via the Migration Gateway. Similarly, if the Print Service behaves as an IPX-based service in a Pure IP environment then an IPX client can use the print service being provided by the Compatibility Mode driver.
Compatibility Mode Client Component
A Compatibility Mode Pure IP client can access the services being provided by a Compatibility Mode Server and can also access the services being provided by an IPX server through the Migration Gateway component.
Installation and Configuration
Compatibility Mode Server component and Migration Agents are integrated into a single module called SCMD.NLM which is bundled with NetWare 5. The functionality of this module depends upon the options specified when the module is loaded.
In this section, we will use the graphic in Figure 1 to detail the installation and configuration steps for setting up Compatibility Mode for a server upgraded from NetWare 4.11 to NetWare 5 (Server 1) and for a brand new NetWare 5 server (Server 2). As you read through the following steps, consider a simple network design, as illustrated in below in Figure 1, that consists of two servers, a printer, and clients.
Server 1 is upgraded from 4.11 to NetWare 5 while Server 2 is a new NetWare 5 server, with one IP printer and two workstations (with Compatibility Mode client enabled) sitting on a Pure IP segment.
Figure 1: A simple network design illustrating installation and configuration options.
Installing and Configuring a NetWare 5 Upgraded Server (Server 1)
After your NetWare 4.x server has been upgraded to NetWare 5, you need to unbind and remove IPX from the network board. At the server console type inetcfg. From the "Internetworking Configuration" screen, select Protocols. From the "Protocol Configuration" screen, select IPX and press the "Delete" key. Select Yes(as shown in Figure 2) to disable IPX. Then exit INETCFG, down, and reinitialize the server.
Figure 2: Deleting IPX protocol using INETCFG.
To bind IP on to the board type inetcfg. From the "Internetworking Configuration" screen, select Protocols. From the "Protocol Configuration" screen, enable TCP/IP. Press the "Esc" key. From the "Internetworking Configuration" screen, select Bindings. Press the "Insert" key. Select TCP/IP from the "List of Protocols". Select the first interface board and press "Enter". Enter the IP address and Subnet mask, as shown in Figure 3. Then exit INETCFG, bring down and reinitialize the server.
Figure 3: Entering the IP address and Subnet mask using INETCFG.
Note: If you need to have static routing enabled, in the INETCFG menu, under protocols, select TCP/IP and enable static routing and configure the static routing table.
Then, to load the CMD Server, from the server console type:
Next, type config (to verify SCMD is loaded with board name as CMD Server). If it was installed and configured correctly, you should see information similar to Figure 4.
Figure 4: Verification information about the network board.
The above information refers to the following:
Hardware Setting: CMD server uses a reserved UDP port 2645 (A55 H)
Node Address: 7E01< IP address of the first interface bound<, node address starts with 7E01 to distinguish from NWIP nodes.
Frame type: Signifies Compatibility Mode Driver
Board Name: Signifies SCMD is functioning as CMD Server
LAN Protocol: IPX CMD Network Number
Installing and Configuring a New NetWare 5 Server (Server 2)
When you initially install NetWare 5 on the server, configure it for IP-Only support, it will automatically load the SCMD.NLM module as CMD Server.
To Verify that CMD Server is loaded type config at the server console.
To verify CMD Server is functioning correctly, at the server console type display servers. This will show the SAP services of SERVER 1 and SERVER 2.
Note: To load SCMD.NLM as CMD Server, IPX should not be bound. If IPX is bound it will come out with the following error message: "SCMD: Could not set the router in CMD Mode routing. Unbind IPX network(s) from IPX stack/router if bound."
CMD Server Configuration Parameters
Current implementation provides three user configurable parameters for (1) changing the CMD Network number, (2) specifying preferred the Migration Agent, and (3) setting CMD preferred IP address.
Changing CMD Network Number. By default the CMD IPX network number is set to FFFFFFFD, this can be changed either through Monitor screen or using the SET command line parameter.
SET CMD NETWORK NUMBER=XXXXXXXX
SMCD module has to be loaded before changing the value, subsequently unload and reload the module for the change to take effect permanently.
Optionally, the CMD network number can be changed dynamically while loading the module. To do this, at the console prompt type:
LOAD SCMD /NET=XXXXXXXX
Configuring Preferred Migration Agent. CMD Server when configured on the network, will register itself with the SLP and learn all the available registered SLP services and build a link list in the memory. It will query the SLP Server Agent or Directory Agent every 5 minutes to refresh its records. CMD Clients attached to this server can access all the services learned by this server.
If there is any CMD Migration Agents available on the Network, CMD Server will discover the registered Migration Agent (MA) from the SLP database and register it with the MA.
IPX services discovered by MA are not registered with SLP database and also MA would initially register its own service with SLP and learn all the registered services. CMD server once registering with MA will subsequently gets its updates from MA through an event-driven delta transfer.
CMD Server algorithm will discover the best MA registered with SLP. However, we can statically set the list of MA's by typing:
SET PREFERRED MIGRATION AGENTS LIST = xxx.xxx.xxx.xxx/
Note: The IP address needs to be entered in decimal notation.
List of Preferred MA's (Maximum = 5) separated by semicolons and ended with '/' which this node will be using. For the changes to be effective please unload and load SCMD.NLM.
Setting Preferred IP Address. If the server is configured with multiple interface IP bound boards, you can specify on which IP address CMD (all modes of operation) should advertise its services and availability. To do this, type the following at the console prompt:
SET CMD PREFERRED IP ADDRESS = xxx.xxx.xxx.xxx
Note: IP address needs to be entered in decimal notation. for the change to take effect, unload and reload SCMD.NLM.
SCMD.NLM as Migration Agent Server
Figure 5 shows a simple network which makes use of the services provided by the MA. An MA stationed on the IPX network will build up the SAP/RIP list for the CMD servers on the IP network registered with the SLP and generates the SAP on the local IPX segments On the other hand all the IPX services available on the IPX segments are provided to all the CMD servers registered with MA. The MA Server provides service and route visibility between IPX and Pure IP network.
Figure 5: Network setup which takes advantage of the Migration Agent Server.
Installing and Configuring the Migration Agent
Install the NetWare 5 Server as the CMD server
Unload the SMCD.NLM module
Bind IPX to the Interface
Load the SCMD module with /G or /Gateway option by typing:
Type config at the server console to ensure the board name is Migration Agent. You should see the following information:
File server name: SERVER-MA IPX internal network number: 0381C070 Server Up Time: 1 Hour 46 Minutes 55 Seconds 3Com EtherLink XL and Fast EtherLink XL Version 3.10 May 26, 1998 Hardware setting: Slot 10005, I/O ports ECC0h to ECFFh, Interrupt Bh Node address: 00C04FBFFE73 Frame type: ETHERNET_802.2 Board name: 3C90X_1_E82 LAN protocol: IPX network 010157FF 3Com EtherLink XL and Fast EtherLink XL Version 3.10 May 26, 1998 Hardware setting: Slot 10005, I/O ports ECC0h to ECFFh, Interrupt Bh Node address: 00C04FBFFE73 Frame type: ETHERNET_II Board name: 3C90X_1_EII LAN protocol: ARP LANprotocol:IP Address 188.8.131.52 Mask FF.FF.FF.C0 (255.255.255.192) Interfaces 1 Compatibility Mode Driver Version 0.82p July 9, 1998 Hardware setting: I/O Port A55h Node address: 7E0182393066 Frame type: CMD Board name: Migration Agent LAN protocol: IPX network FFFFFFFD Tree Name: SERVER-MA-TREE Bindery Context(s): .novell
Note: Both IP and IPX are bound to the interface.
To verify that MA is advertising its services, type display services at the server console prompt of the CMD server. You should see all of the IPX services of the IPX servers on the IPX segment. On the other hand when you type display services on the IPX servers, you should see the SAPs of the CMD servers on the IP segment.
If there are multiple MA's on the network segment, to distribute the load CMD servers can be configured to register with the specific MA by setting the preferred Migration Agent list, as discussed above. This would also provide load balancing.
To view the list of MA's on the network registered with the SLP database type the following at the console (you will then see a screen similar to Figure 6):
DISPLAY SLP SERVICES mgw.novell
Figure 6: Display of MAs registered with the SLP database. Here, there is one MA with an IP address of 184.108.40.206.
Installing SCMD.NLM to Provide IP Backbone Support
Imagine a network as illustrated in Figure 7. This scenario can occur during migrating from IPX networks to pure IP networks. IPX network A and IPX Network B are not directly connected through IPX but are connected via a pure IP network, they cannot communicate with each other in IPX. The feature which facilitates communication between the two IPX segments is referred to as the IP Backbone Support.
Figure 7: A network setup illustrating Migration Agents with backbone support functionality.
In Figure 7, if a client in IPX Network A wants to access a service in IPX Network B and vice versa then, MA-1 will be aware of the services in IPX Network B and MA-2 will be aware of services in IPX Network A. Backbone component in MA-1 and MA-2 exchange IPX networks information between each other. IP Backbone component uses NLSP as a carrier for information exchange. MA-1 and MA-2 will have two Network interface cards one interface is bound with IPX which connects the servers on the IPX network and other interface is bound with IP connecting the servers with IP only link.
Installation and Configuration on MA-1 and MA-2
Install the NetWare 5 server with one interface bound with IP and the other with IPX support.
At the console prompt type:
SCMD [/g] /bs
The Backbone feature will get activated, this feature can only be activated on a MA. The "/g" parameter is optional. IPXRTR.NLM is not loaded then it will get autoloaded with Routing = NLSP.
If IPXRTR is already loaded then, CMD does not ensure that the routing protocol used is NLSP, need to configure IPX to use NLSP as its routing protocol. This can be done using the INETCFG utility in the server as follows:
At the server console type inetcfg. From the "Internetworking Configuration" screen, select Protocols. Select IPX. Next, select Expert Bind Options. Then, select NLSP with RIP/SAP Compatibility. Finally, down the server and reinitialize the system.
Both the servers are enabled with IP Backbone support, to verify the services are advertised. Type display servers on the IPX Servers on both the networks, IPX servers on IPX Network A should be able to see all the IPX services of IPX Network B and vice versa.
If there is a need to filter some of the services in IPX Network A and IPX Network B, then any kind of existing SAP/RIP filtering on MA's will not work. This is because the two MA's exchange service/route information between them using NLSP (NLSP overrides SAP/RIP filtering). To achieve filtering in such a situation perform the following on MA-1 or/and MA-2 IPX interfaces which need filtering enabled:
At the server console type inetcfg. From the "Internetworking Configuration" screen, select Bindings. Select IPX. Next select Expert Bind Options. Then select RIP Bind Options and change "RIP State" to ON. Next, select SAP Bind Options and change "SAP State" to ON. Finally, select NLSP Bind Options and change "NLSP State" to OFF.
Note: General precautions for all the SCMD technologies: MA's on the network should have the same CMD network number, and when SCMD is loaded without any option or /G or /BS option, it is a new technology and will function differently.
MAs and CMD servers in the network are discovered using SLP. SLP uses Multicasting as its mechanism for communication.If these servers are to be discovered across routers, ensure that Multicasting is enabled on routers.In some cases, Multicasting may not be preferable over a WAN Link and would affect the MA and CMD functionality.This issue can be addressed by positioning an SLP-DA (Directory Agent) in the network. For more information on SLP, refer to the AppNote "Migrating to Pure IP with NetWare 5".
* Originally published in Novell AppNotes
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.