En este artículo, le mostraremos cómo verificar el puerto TCP actual en el que un nombre o predeterminado MS SQL Server la instancia está escuchando (esperando la conexión), cómo cambiar un puerto de conexión de SQL Server a uno estático / dinámico, y cómo Navegador de SQL Server Los clientes utilizan el servicio para conectarse a MSSQL.

  • La instancia predeterminada de SQL Server (MSSQLSERVER) usa estático Puerto TCP 1433. Es el puerto al que se conectan los clientes o la consola de SQL Server Management Studio (SSMS);
  • Las instancias de MSSQL y SQL Server Compact con nombre están configuradas para usar un puerto TCP dinámico de la gama RPC (49152 - 65535).

Un puerto dinámico significa que el número de puerto de la instancia de MSSQL que acepta conexiones se asigna después de que se inicia el servicio de SQL Server. En la mayoría de los casos, incluso después de reiniciar el servidor, SQL Server escuchará el mismo puerto TCP dinámico asignado antes del reinicio. Pero si el número de puerto está ocupado, SQL Server se ejecutará en un nuevo puerto TCP. Una aplicación que se conecta a MSSQL suele obtener el nuevo número de puerto del servicio del navegador de SQL Server sin ningún problema (lo contaremos más adelante). Los puertos de SQL Server dinámicos son convenientes cuando administra varias instancias de SQL en un solo host, pero causan muchos problemas cuando se implementan firewalls en su red.

Contenido:

  • Configuración de la instancia de MS SQL Server para escuchar en un puerto específico
  • Servicio de navegador de SQL Server: puertos TCP y UDP

Configuración de la instancia de MS SQL Server para escuchar en un puerto específico

Puede reconfigurar su servidor SQL para escuchar en un puerto TCP estático o dinámico. Por lo general, es posible que lo necesite cuando se ejecutan varias instancias de SQL Server en un solo host o se utilizan firewalls en su red.

Para administrar los puertos de escucha, necesitará el Administrador de configuración de SQL Server. Por lo general, este complemento se instala junto con una instancia de MSSQL.

Abra el Administrador de configuración de SQL Server y expanda el Configuración de red de SQL Server sección.

En mi caso, solo hay 1 instancia de MSSQL ejecutándose en el servidor, por lo que configuraré los puertos de escucha para ello. La lista de protocolos disponibles para una instancia contiene lo siguiente:

  • La Memoria compartida El protocolo se utiliza para conectarse desde una computadora local (en la que está instalada una instancia de MSSQL). No se recomienda desactivarlo;
  • Tubos con nombre se puede utilizar sobre el protocolo TCP / IP. Pero su uso no nos aporta mucho beneficio, por lo que lo dejaremos habilitado.
  • TCP / IP es donde se configuran las opciones de red MSSQL.

Haga doble clic TCP / IP.

Solo hay 3 parámetros en la pestaña Protocolo:

  • Activado - para asegurarse de que el protocolo TCP / IP esté habilitado;
  • Mantener viva con qué frecuencia enviar paquetes de mantenimiento de vida para asegurarse de que la conexión aún esté disponible (en milisegundos). No cambie el parámetro sin necesidad;
  • Escuchar todo es un entorno no obvio responsable del contenido de la IPAll en la pestaña Direcciones IP. Si el valor de Escuchar todo es No, la sección IPAll se ignora

Sobre el Direcciones IP pestaña, puede ver la lista de todas las direcciones IP de la computadora (incluidas las IPv6 y locales) y su configuración. Aquí puede configurar diferentes puertos TCP para una dirección de conexión local y externa, o diferentes puertos para diferentes direcciones externas (si su servidor tiene múltiples interfaces de red en diferentes segmentos, por ejemplo, usando VLAN o múltiples alias de IP).

configuración de ipall en la pestaña de direcciones IP del servidor mssql

Es probable que desee cambiar los puertos de todas las direcciones IP a la vez, así que cambie su IPAll sección.

cómo cambiar el número de puerto predeterminado en MySQL

La Puertos dinámicos TCP La opción está relacionada con el uso de puertos dinámicos.

  • Un vacío El valor de TCP Dynamic Ports deshabilita el uso de puertos dinámicos de SQL Server;
  • 0 habilita el uso de puertos TCP dinámicos del rango RPC 49152 - 65535;
  • No tiene ningún sentido establecer un valor de puerto fijo aquí; cambia cada vez que se reinicia la instancia de MSSQL.

Para establecer un estático Puerto TCP para una instancia de SQL Server, deshabilite los puertos dinámicos TCP y especifique un nuevo número de puerto estático en el Puerto TCP parámetro.

¿Cómo configurar el puerto TCP estático) en Microsoft SQL Server?

Para aplicar los cambios, reinicie el servicio SQL Server. Tenga en cuenta que el servicio del explorador de SQL Server está detenido.

reiniciando la instancia del servidor SQL

Asegúrese de poder conectarse a su instancia de SQL mediante SSMS a través del nuevo puerto TCP fijo. El formato de la cadena de conexión es el siguiente:

hostnamelab-sql, PortNumber

¿Cómo conectar SQL Server usando un puerto TCP diferente?

No podrá conectarse sin especificar el puerto de escucha porque el servicio del navegador SQL está deshabilitado.

Servicio de navegador de SQL Server: puertos TCP y UDP

Antes de MSSQL 2000, no se podía instalar más de una instancia de SQL en un host. Esta característica apareció en versiones más recientes de MSSQL. Explorador de SQL Server apareció en SQL Server 2005 y se utilizó como un servicio intermediario para distribuir conexiones entre varias instancias de MSSQL instaladas en la misma computadora.

Además, SQL Server Browser es responsable de la conexión a MSSQL (por ejemplo, desde SQL Server Management Studio) sin especificar un número de puerto (hostnamelab-sql). SQL Server Browser obtiene el número de puerto dinámico actual de una instancia del registro y lo envía a un cliente.

Si deshabilita el servicio del navegador de SQL Server, deberá especificar el puerto TCP manualmente. Por ejemplo, hostnamelab-sql, 1440.

Si el servicio del navegador de SQL Server se detiene y se utilizan puertos dinámicos, las aplicaciones no podrán obtener números de puerto para conectarse.

Puertos estándar de SQL Server:

  • TCP 1433 es el puerto estándar de SQL Server;
  • UDP 1434 es un puerto utilizado por SQL Server Browser.

Otros puertos se configuran cuando instala / configura un servicio específico.

Si está utilizando una configuración de firewall estricta o si desea restringir SQL Server tanto como sea posible, se recomienda deshabilitar los puertos dinámicos (establezca un valor vacío) y deshabilitar el navegador de SQL Server.

Si sus servidores SQL tienen acceso público, vale la pena cambiar el número de puerto predeterminado. No lo protegerá completamente de los ataques de los piratas informáticos, pero su frecuencia se reducirá.

Recomendado para ti