• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 9218
  • Last Modified:


I have this issue.

I install an configure SQL Server 2000 and the service pack 4 for it.. on windows 2003 SP1 server computer.

I´m  triyng to remotely connect by 1433 TCP port, but i can't.

I try some sugestions like:
- netsat -noa : but the port isn't  there.
- no firewall or antivirus program installed on it, not either the windows firewall actived.
- I already open the port on the router.
- when i use the telnet command with the localhost, ip, public ip or full computer name , and the port , (like 1433,  etc... ) i get: can't open host conection on port 1433: connection error.
- I try sql network client tool and client server to add tcp and especify the port , but nothing.

I don' see another way to open or configure that port, any ideas???

Thank you.

1 Solution
try first connecting to it from the server that has SQL server on it, i.e. locally (you can just telnet to it and see if it connects). You may need to enable TCP transport protocol in Server Configuration.
Have you started the SQL Server service?

Also check the server network utility and ensure that it is configuerd to use port 1433.

If this is a named instance install, it is not on port 1433 by default.
SQL Server is a Winsock application that communicates over TCP/IP using the sockets network library. The SQL Server listens for incoming connections on a particular port; the default port for SQL Server is 1433. The port doesn't need to be 1433, but 1433 is the official Internet Assigned Number Authority (IANA) socket number for SQL Server.

A client application communicates to SQL Server using the client-side network library Dbmssocn.dll (or Dbnetlib.dll for SQL Server 2000) and any client using Microsoft Data Access Components (MDAC) 2.6.

When the client establishes a TCP/IP connection, a three-way handshake is done. The client opens a source port and sends traffic to a destination port, which by default is 1433. The client source port in use is random, but is greater than 1024. By default, when an application requests a socket from the system for an outbound call, a port between the values of 1024 and 5000 is supplied.

The server (in this case, SQL Server) then communicates to the client by sending traffic from 1433 back to the port that the client established.

The best way to observe this behavior is to trace a client-to-server communication by using Microsoft Network Monitor or a network sniffer tool. To configure the firewall, you must allow traffic from *ANY* to 1433, and from 1433 to *ANY*, where *ANY* is a port greater than 1024.

*ANY* -> 1433

1433 -> *ANY*

In addition to using Microsoft Network Monitor, you can also use the TCP/IP Netstat utility to illustrate this. Issuing netstat -an from an MS-DOS command window produces the following results showing three established connections to SQL Server. This example uses as the IP address of SQL Server and as the client IP address. The ports opened by the client are 1746, 1748, and 1750 respectively.

Proto Local Address Foreign Address State

The firewall software should allow this dynamic allocation to occur through the use of rules. If it does, you can configure 1433 -> *ANY* established; this will dynamically open the response port after a syn followed by a syn/ack by way of a statefull packet inspection.

There is no way to limit the number of source TCP ports used for a SQL Server client to connect; this would defeat the purpose of having the client allocate a new, unused dynamic port. This is a TCP/IP standard that is defined for Winsock applications; this is not a limitation of SQL Server client communication.

In addition, a named instance of SQL Server 2000 will use a dynamic destination port by default. This port should be changed to a fixed port prior to configuring the firewall. The SQL Server Network Utility should be used to configure the destination port.

Otherwise, the client computer would need to open a random UDP port and the server UDP port 1434 will be used to send the instance name, and if the instance is clustered, the version of the SQL instance, the TCP port number that the instance is listening on, and the named pipe that the instance is using. However, if the goal is to minimize the number of ports open on the firewall, a static port number should be chosen for the default instance and any named instance. The client computers would need to be configured to connect to a particular ServerName or ServerName instance and specific port number.

Hope this will answer your query.

Chetan Sachdeva
Chetan Sachdeva:
It's probably best to provide a link to the text you copied so the asker can follow the links there:
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now