TRACK [ON/OFF] Console Command, Syntax and Applications J. Warren Harding Research Manager Systems Engineering Division Abstract: The TRACK console command is an undocumented diagnostic tool that can be invoked on any file server running 286-based NetWare or NetWare 386 or router (formerly NetWare Bridge) console. Not only is it a very useful tool to investigate problems associated with workstations attempting to connect to a server, but TRACK gives you the ability to diagnose problems with routers and servers on the internetwork. It displays routing and server information that can be helpful in diagnosing and preventing network problems. This Appnote discusses the use, syntax and diagnostic applications of TRACK information. Disclaimer Novell, Inc. makes no representations or warranties with respect to the contents or use of these Application Notes, or any of the third-party products discussed in the AppNotes. Novell reserves the right to revise these Application Notes and to make changes in their contents at any time, without obligation to notify any person or entity of such revisions or changes. These AppNotes do not constitute an endorsement of the third- party product or products that were tested. The configuration or configurations tested or described may or may not be the only available solution. Any test is not a determination of product quality or correctness, nor does it ensure compliance with any federal, state or local requirements. Novell does not warranty products except as stated in applicable Novell product warranties or license agreements. Copyright { 1990 by Novell, Inc., Provo, Utah. All rights reserved. As a means of promoting NetWare Application Notes, Novell grants you without charge the right to reproduce, distribute and use copies of the AppNotes provided you do not receive any payment, commercial benefit or other consideration for the reproduction or distribution, or change any copyright notices appearing on or in the document. Introduction The use of the TRACK command provides three types of information: route information, server information and workstation connection requests. Although the TRACK command is available in both 286-based NetWare and NetWare 386 they differ only in how the information is displayed. TRACK is invoked by typing TRACK ON at the file server or router console.The screen clears and the routing and server information is displayed as it is received. The function can be turned off by typing TRACK OFF at the console. With NetWare 386, use of the ATL-ESC and CONTROL-ESC keys allow toggling between the TRACK screen and the current screen displayed. Also, you can stop scrolling of the TRACK screen by pressing any key. Pressing any key again will cause the TRACK screen to continue. 286-based NetWare does not support this toggle-pause function. Fig. 1 illustrates a TRACK display for 286-based NetWare. The NetWare 386 TRACK is displayed in Fig 2. : 286-based NetWare TRACK screen : 386-based TRACK screen Route Information In order for NetWare to send packets of information through an internetwork of workstations, file servers and routers, all of these devices must be informed of existing networks and how information can be routed to them. Knowledge about the layout of the network is communicated through the network using the Routing Information Protocol (RIP). Periodically, information is transmitted between the routers and servers to inform them of other networks that exist in the internetwork. These information broadcasts can be displayed using the TRACK function. For more information on RIP, see the AppNote entitled NetWare Communication Processes. Route Information Syntax Route information is displayed in the following format on 286-based Netware file servers and routers: Direction [LAN:Node_Addr] Net_Num Hops/Ticks Net_Num Hops/Ticks ... NetWare 386 displays route information in a slightly different format as shown below: Direction [Net_Addr:Node_Addr] Time Net_Num Hops/Ticks Net_Num Hops/Ticks ... Direction specifies whether the information is being received from the network (IN) or whether the server or router transmitted information (OUT.) LAN displays the server or router LAN card that received or transmitted information. LAN is displayed as the letter corresponding to the respective LAN board (A, B, C or D). Net_Addr is the eight digit hexidecimal network number assigned to the LAN board that received or transmitted information. NetWare 386 displays the network number assigned to the LAN board rather than a LAN letter. Node_Addr is the node address of the card (12 hex digits) in the server or router that received or transmitted information. In most OUT transmissions, the Node_Addr is FFFFFFFFFFFF. This indicates that the transmission has been broadcast to all nodes on the local network. Time is displayed in hours, minutes and seconds that the whether information was received or transmitted. This information is only displayed on NetWare 386 file servers. Net_Num is the unique eight digit hexadecimal number assigned to a specific network. With NetWare, each cabling system on the internet must be assigned a unique network number. These network numbers are broadcast by all routers (and file servers) to all other routers and file servers on the internetwork. In NetWare 386 servers, the information about the server's internal network number is included in route information broadcasts. Hops is the number of routers (internal and external) that a packet would traverse to reach the network number named. In a NetWare internetwork, a maximum of 15 hops (or routers) may be traversed before the packet is discarded. Ticks denotes the time (in 1/18th of a second increments) that a packet takes to reach the specified network if a packet were transmitted from the machine displaying the track-on. Typically this number is very low, but it can be as high as 999 for a very slow link. This number is used to differentiate between routes with extremely different transmission speeds. For all local area network protocols (such as Arcnet, Ethernet and Token-Ring) the number of ticks required is computed as one tick per hop. For asynchronous or X.25 routes, the number of ticks is computed based on the BAUD rate used. The formula is typically: The number of ticks = 4 * Typical one-way transport time (in 1/18th second increments) + 10. As a workstation logs into a specific resource, the estimated number of ticks to reach that resource is used by the shell to set the initial time-out for detecting error conditions when communicating with that resource. Route information held in each of the file servers and routers is aged by the systems. This information is purged after three minues if it has not been updated by route information from other routers and servers. Multiple Routes When two routes to a destination are known by a router, the router will send packets by the fastest route. The route is determined by the ticks value. If two routes exist with the same transport times, the packets will be sent out on the first network number in the file server or router table. A workstation, however, does not switch to a faster route should one become available. Instead it relies on the route given by the first router that responds to a Get Target (get route to a destination) request. It continues to use that route as long as it is available. In addition, workstations on the network can query a file server or a router with a Route Request. These also show up on the TRACK screen. Examples on 286-based NetWare are shown Fig. 3. : 286 Workstation TRACK On large internetworks, the messages can wrap around to several lines. In the first message in Fig. 3, information is received on LAN A (card node address 02608C247894) about two networks, numbers 00001EF0 and 00000001. They are respectively 1 and 3 hops, and 2 and 4 ticks away from the server or router where the message is displayed. In the second message in Fig. 3, a broadcast is being sent out on LAN B with information about network numbers 00003333, 44444444, BABEBAAA, and 12E00000. NetWare 386 displays these with slight differences as shown in Fig. 4. : 386 Workstation TRACK Server Information Servers in a NetWare internetwork are tracked in a manner similar to routers and workstations. Information about each server in the internetwork is transmitted through the network using the Server Advertising Protocol (SAP). Each file server and bridge maintains tables of the available servers. The tables are used to route packets to them and to respond to workstation inquiries regarding the services that are available in the internetwork. Server Routing Syntax As with the RIP, information is periodically (once per minutes) transmitted between the routers and servers to inform them of other servers that exist in the internetwork. These information broadcasts can be displayed using the TRACK function. For more information on SAP, see the NetWare Application Note entitled NetWare Communication Processes. Server information is displayed in the following format on 286-based NetWare file servers and routers: Direction [LAN:Node_Addr] Server_Name Hops Server_Name Hops ... NetWare 386 displays server information as follows: Direction [Net_Addr:Node_Addr] Time Server_Name Hops Server_Name Hops ... For complete definitions refer to Routing Information Syntax. Server_Name is the name of a server on the internetwork for which information is being propagated. This may include the name of the server or router (if a LAN to LAN router) that is currently displaying the TRACK. The server names displayed include the names of all devices or processes on the internetwork that advertise their services using the Service Advertising Protocol (SAP). All File Servers and LAN to LAN routers will be shown. In addition, any VAPs or value-added servers (such as database servers, job servers or print servers) that advertise their services using the SAP protocol will also be displayed by TRACK. Examples are shown in Fig. 5. : Server TRACK On large internetworks these messages can wrap around to several lines. In the first example, information is being received on LAN A (card node address 02608C247894) regarding three fileservers named FILESERVER1, FILESERVER2 and FILESERVER3. They are respectively 3, 4 and 1 hop away from the server or router where this message is displayed. In the second example, a broadcast is being sent out on LAN B with information about server SERVERA (which is itself) and server SERVERB. NetWare 386 displays this information with slight differences as shown in Fig. 6. : A 386 Server TRACK Get/Give Connection Request The third type of information that TRACK displays is the get/give connection requests. These will only be displayed on a file server console and not on router consoles. As a workstation boots and loads the NetWare shell, a Get Nearest Server request is broadcast on the network. All connected file servers will receive the message and respond back to the workstation with a Give Nearest Server response. This provides the workstation with a file server connection. The workstation will initially attach to the first file server that responds. The file server TRACK function will display the Get Nearest Server and Give Nearest Server requests and responses as the file server receives and responds to them. 286-based NetWare displays these functions in the following format. Direction [LAN:Node_Addr] Get Nearest Server Direction [LAN:Node_Addr] Give Nearest Server Server_Name Server_Name is the name of the server that has offered a connection to the workstation. Fig. 7 shows an example of a 286-based TRACK display. : 286-based Server Information The first line is the request for a server connection from the workstation. The second line is the server named SERVER3 offering the workstation a connection. NetWare 386 displays these lines with slight differences as shown in Fig. 8. Direction [LAN:Node_Addr] Time Get Nearest Server Direction [Net_Addr::Node_Addr] Time Give Nearest Server Server_Name : 386-based Server Using TRACK for Diagnostic Purposes TRACK is useful for diagnosing problems with the network. It can help to narrow the field when a problem occurs. The applications that follow identify two problems that might occur on a NetWare network, and ways to use TRACK to diagnose the cause. Application 1: File Server Could Not Be Found Symptoms. The workstation loads the shell and hangs or gets the error A file server could not be found. Indication. This indicates that there's a problem with the workstation's ability to communicate with the file server. Solution. Before loading the shell on the workstation, activate TRACK on the file servers and routers involved. As the shell loads on the workstation, information similar to that shown in Fig. 9 should be displayed on one of the servers or routers (for 286-based NetWare). : Loading Shell (286-based NetWare) For 386 versions of NetWare it will appear as shown in Fig. 10. : Loading Shell (NetWare 386) If the file server or router displays all of this information it indicates that the workstation was able to send requests to the file server (Get Nearest Server), and the file server was able to answer (Give Nearest Server). Because the Route Request was transmitted by the workstation the first response by the server (Give Nearest Server) was received and understood by the workstation. This sequence of TRACK messages will be displayed if a workstation successfully loads the shell and begins to work with a file server. If none of the above lines of information are displayed on any file servers or routers on the network as a workstation loads the shell, the workstation could not successfully send a Get Nearest Server request to the file server. This could indicate a bad cable system, a bad hub or concentrator, or an improper connection or termination. It could also be caused by an improperly configured network adapter or adapter driver. If only the first line (Get Nearest Server) is displayed as a workstation attempts to load the shell, the workstation is able to send the request properly and the file server is able to receive it. However, the file server is not able to send the response back. This might indicate a transmission problem in the file server. For example, it might have a faulty or improperly configured network adapter or adapter driver. The file server might not have too few file service processes. The cable system is probably not at fault since the original request was transmitted without problems. If the first two lines are displayed (Get and Give Nearest Server) but the workstation fails to complete the shell load, the workstation sends OK and the file server receives OK. But if the file server is not sending properly (and it doesn't know it) or the workstation is not receiving properly, a bad or improperly configured workstation, or file server network adapter or adapter driver may be causing the problem. Application 2: Unknown File Server Symptoms. A file server is running but cannot be seen when a workstation initiates the SLIST command from another server. The error message "Unknown file server" is displayed when a user attempts to log in to the server. Indication. A similar situation occurs when a file server is not receiving information on other servers or networks in the internet. Solution. Activate TRACK on all the file servers and printers involved. Check for information being sent and received by respective servers. Having improper network numbers configured on a server or router can also cause this failure. This special case can be identified because errors such as "WARNING!!! MULTIPLE ROUTER WITH SAME INTERNET ADDRESS!" or "ROUTER CONFIGURATION ERROR!!! Router xxxxxxxxxxxx claims LAN A is yyyyyy!" will appear on all of the file servers and routers on the network.