SQL Server uses a multiprotocol networking library that will listen for incoming network connections on named pipes, a TCP/IP port, and an SPX socket. The named pipe name, TCP/IP port, and SPX socket number are usually chosen dynamically.
If you want users on the internet to connect to your SQL Server using TCP/IP and your organization is using a firewall system to isolate the network containing the SQL Server from the rest of the internet, ensure that SQL Server uses a particular port number for its incoming connections. By doing this, the firewall system will forward connections to that particular port number to your SQL Server.
You can configure SQL Server to listen for incoming connections on a particular port by manually editing some Windows NT Registry keys that control the server's listening behavior. Use the REGEDT32.EXE utility (usually found in the SYSTEM32 directory under the Windows NT root directory) to find the Registry key:
HKEY_LOCAL_MACHINE
\SOFTWARE
\MICROSOFT
\MSSQLSERVER
\RPCNetlib
Note that only system administrators can edit Registry key values.
Once you have located the Registry key, create a new value named RPCprotocols, assigning it a value type of REG_MULTI_SZ. For the value, enter one or more of the following strings to control which protocols are used and the particular named pipe, TCP port, or SPX socket on which the server listens for connections.
Network connection | Description |
---|---|
ncacn_ip_tcp[,port] | Directs the server to listen for connections on TCP/IP. If port is specified, it is used as the number of the TCP/IP port to which the server listens for connections. The TCP/IP port number 1434 has been specifically registered with the Internet Assigned Number Authority (IANA), and should usually be used for the TCP/IP port number to avoid conflicts with other statically or dynamically assigned port numbers. |
ncacn_np[,name] | Directs the server to listen for connections using LAN Manager named pipes. If name is specified, is it used as the name of the named pipe to which the server listens for connections. |
ncacn_spx[,socket] | Directs the server to listen for connections using SPX sockets. If socket is specified, it is used as the number of the SPX socket to which the server listens for connections. |