Archived Content: This information is no longer maintained and is provided 'as is' for your convenience.
How does the Bad Address Cache work?
Novell Client 4.9 for Windows NT/2000/XP
Unable to connect to certain IP or IPX resources
The workstation is able to ping the resource, but unable to connect to it
It is possible that the address you are trying to connect to has been marked bad by the Novell client. This document explains how the client marks IP and IPX addresses as bad and why the bad address cache exists.
Bad Address Cache - How it works:
The bad address cache is similar in nature to the bad name cache. For an explanation of the bad name cache, please see Primus Solution NOVL97360 titled "How does the Novell Client Bad Name Cache work?". If the client needs to talk to an address, it sends a request to the protocol stack (IP or IPX) and the protocol stack tries to find and establish a connection with that address. If the protocol stack (IP or IPX) cannot establish a connection (it receives a failure from the protocol stack), then that address gets marked as bad for five (5) minutes. There is no way to find out what addresses are currently populated in the workstation's bad address cache.
If the address is an IP address, the Novell client sends a request to the TCP/IP stack on the Windows workstation. The TCP/IP stack makes three requests (SYN requests) to connect to that IP address. If the TCP/IP stack does not get a response back to those three SYN requests, the TCP/IP stack returns a failure to the Novell client. The Novell client then places that "bad" IP address into the bad address cache for five minutes.
If the address is an IPX address, the Novell client sends a request to NWLINK.SYS on the Windows workstation. NWLINK.SYS is Microsoft's IPX protocol stack. NWLINK.SYS will RIP for that IPX address. If NWLINK.SYS does not get a RIP response back, then the IPX stack returns a failure to the client. The Novell client then adds the IPX address to the bad address cache for five minutes.
The bad address cache was implemented to help improve performance to dead or bad addresses. It is enabled by default. However, in a network that is having communications problems (dropped packets, overloaded NetWare servers, etc.), the bad address cache can cause connectivity issues. Please see TID 10076045 titled "Slow login times when mapping a drive to a server that is down". If you want to prepopulate the bad address cache, please see KB 10086959 titled "How to prevent a client from ever using a server returned in a referral list".