FIX: 16-bit TCP/IP Fails to Connect With Long DNS Names (154627)



The information in this article applies to:

  • Microsoft SQL Server 4.2x
  • Microsoft SQL Server 6.0
  • Microsoft SQL Server 6.5

This article was previously published under Q154627
BUG #: Windows NT: 15694

SYMPTOMS

When you attempt to connect to a SQL Server using the 16 bit TCP/IP sockets network library with a fully qualified DNS name 20 characters or greater, the following error message appears:
Msg No.:10004 Severity: 9 State: 0
Unable to connect: SQL Server is unavailable or does not exist.
General network error. Check your documentation.

OS Error: 11004 ConnectionOpen(gethostbyname())

CAUSE

When the name is passed to the network for resolution to an IP address, it is truncated at the 20th character and "FF FF FF FF" is appended to the name. This results in a name that cannot be resolved.

WORKAROUND

To work around this problem, use shorter DNS names or use the IP address of the SQL server.

MORE INFORMATION

This problem is not related to only DNS names. Any name greater than 20 characters will fail in this manner. However, names of that length are not frequently used in environments other than the Domain Name Service.

STATUS

Microsoft has confirmed this to be a problem in Microsoft SQL Server versions 4.21a, 6.0 and 6.5. This problem has been corrected in U.S. Service Pack 2 for Microsoft SQL Server version 6.5. For more information, contact your primary support provider.

Modification Type:MajorLast Reviewed:11/14/2003
Keywords:kbBug kbfix kbnetwork KB154627