Guía de solución de problemas de SMB

Pruebe nuestro agente virtual : puede ayudarle a identificar y corregir rápidamente problemas comunes de SMB.

Este artículo está diseñado para ayudarle a solucionar problemas de bloque de mensajes del servidor (SMB). La mayoría de los usuarios pueden resolver su problema mediante las soluciones que se proporcionan aquí.

Terminología de SMB

Comunicar la terminología correcta es un aspecto clave de la solución de problemas de SMB de calidad. Por lo tanto, debe aprender la terminología básica de SMB para garantizar la precisión de la recopilación y el análisis de datos.

  • El servidor SMB (SRV) (también conocido como servidor de archivos) siempre es el sistema que hospeda el sistema de archivos.
  • El cliente SMB (CLI) siempre es el sistema que intenta acceder al sistema de archivos.

Estos términos son coherentes independientemente de la versión o edición del sistema operativo. Por ejemplo, si un equipo basado en Windows Server 2016 intenta llegar al recurso compartido SMB \\MyWorkstation\Data en un equipo basado en Windows 10, Windows Server 2016 es el cliente SMB y Windows 10 es el servidor SMB.

Lista de comprobación para la solución de problemas

  • Compruebe que el protocolo de red SMB correcto está instalado. El protocolo de red SMBv1 ya no está instalado de forma predeterminada.
  • Deshabilite SMBv1.
  • Si SMBv1 está deshabilitado en un dispositivo que solo admite SMBv1, no puede acceder a ese dispositivo. En esta situación, actualice el sistema.
  • No puede deshabilitar SMBv2 o SMBv3 por separado porque estas versiones forman parte del mismo controlador.
  • Analizar el tráfico: SMB es un protocolo de nivel de aplicación que usa TCP/IP como protocolo de transporte de red. Por lo tanto, un problema relacionado con SMB podría indicar que hay problemas subyacentes relacionados con TCP/IP.
  • Analizar el protocolo: para comprender los comandos y las opciones exactos que se usan, examine los detalles reales del protocolo SMB en el seguimiento de red.
  • Actualizar archivos de sistema relacionados con SMB: mantenga actualizados los archivos del sistema. Asegúrese de que está instalado el paquete acumulativo de actualizaciones más reciente.

Información del archivo SMB

Archivos binarios de cliente SMB que aparecen en %windir%\system32\Drivers:

  • RDBSS.sys
  • MRXSMB.sys
  • MRXSMB10.sys
  • MRXSMB20.sys
  • MUP.sys
  • SMBdirect.sys

Archivos binarios del servidor SMB que aparecen en %windir%\system32:

  • Srvsvc.dll

Archivos binarios del servidor SMB que aparecen en %windir%\system32\Drivers:

  • SRVNET.sys
  • SRV.sys
  • SRV2.sys
  • SMBdirect.sys

Se recomienda actualizar los siguientes componentes antes de solucionar problemas de SMB:

  • iSCSI: un servidor de archivos requiere almacenamiento de archivos. Si el almacenamiento tiene componentes iSCSI, actualice esos componentes.
  • Red: actualice los componentes de red.
  • Windows Core: para mejorar el rendimiento y la estabilidad, actualice Windows Core.

Desconectar todos los recursos compartidos del equipo local

Puede usar el comando Net Use * /delete para desconectar recursos compartidos activos o recordados en un equipo local.

Nota:

También puede usar este comando en equipos remotos. Ejecute Net help use para obtener más opciones.

Importante

Esta sección de este artículo se basa en el contenido de la comunidad.

Aviso legal de activación de soluciones de comunidad

Microsoft Corporation o sus proveedores no representan la idoneidad, fiabilidad o precisión de la información y los gráficos relacionados en el presente documento. Toda la información y gráficos relacionados se proporcionan "tal cual" sin garantía de ningún tipo. Por la presente, Microsoft o sus respectivos proveedores renuncian a toda garantía y condición respecto a esta información y los gráficos relacionados, incluidas todas las garantías y condiciones implícitas de comerciabilidad, idoneidad para un propósito particular, esfuerzo profesional, título y ausencia de infracción. Usted acepta específicamente que en ningún caso Microsoft o sus proveedores serán responsables por daños directos, indirectos, punitivos, incidentales, especiales, consecuentes ni ningún daño, incluidos, sin limitación, daños por pérdida de uso, datos o beneficios, que surja de o en cualquier forma relacionada con el uso de o imposibilidad de uso de la información y los gráficos relacionados contenidos en este documento, ya sea basado en contrato, agravio, negligencia, responsabilidad estricta o de otro tipo, incluso si Microsoft o cualquiera de sus proveedores han recibido aviso de la posibilidad de daños.

Problemas y soluciones comunes

Al acceder a un servidor de archivos de Scale-Out, el rendimiento es limitado

La red de acceso de cliente usa el acceso directo a memoria remota (RDMA) de alta velocidad, pero la red del clúster no. Debido a este comportamiento, el redireccionamiento solo se produce en la red del clúster. La red de clúster se conecta normalmente a adaptadores de red de 1 GbE.

Para solucionar este problema, puede configurar la opción para usar la red de acceso de cliente para volúmenes compartidos de clúster (CSV). O bien, actualice a Windows Server 2012 R2 o a una versión posterior. Ese sistema redirige automáticamente a los clientes al nodo de clúster que tiene el mejor acceso al volumen del recurso compartido de archivos. Para obtener más información, consulte el siguiente artículo de archivo de blog: Reequilibrio automático de SMB Scale-Out en Windows Server 2012 R2.

SMB prefiere el adaptador de red físico más lento al adaptador de red virtual.

El adaptador de red virtual del host no es compatible con RSS. El adaptador de red físico es compatible con RSS. SMB siempre usa el adaptador de red compatible con RSS en lugar del adaptador de red que no es RSS, incluso si el adaptador de red RSS es más lento.

Para solucionar este problema, deshabilite la funcionalidad RSS en el adaptador de red físico o use restricciones smb multicanal para restringir la comunicación SMB a una o varias interfaces de red definidas. Para obtener más información, vea el cmdlet New-SmbMultichannelConstraint SMB Share en Windows PowerShell.

SMB informa de que el adaptador de red no es compatible con RDMA aunque crea que es

Este problema se produce porque es posible que los adaptadores de red compatibles con RDMA que tienen controladores o firmware anteriores no se identifiquen correctamente como compatibles con RDMA.

Para solucionar este problema, actualice el firmware y el controlador del adaptador de red desde el sitio web del fabricante.

La cantidad necesaria de tráfico de red antes de que se inicie SMB multicanal varía

La característica SMB multicanal se usa para detectar las funcionalidades RSS y RDMA de los adaptadores de red. En los sistemas operativos del servidor, SMB multicanal se inicia cuando se produce la operación de lectura o escritura inicial. En los sistemas operativos cliente, SMB multicanal no se inicia hasta que se produce una cierta cantidad de tráfico de red.

En los sistemas operativos del servidor, SMB multicanal se inicia rápidamente solo una vez por sesión. En los sistemas operativos cliente, puede configurar una entrada del Registro para iniciar SMB multicanal más rápidamente. Para obtener más información, vea el siguiente artículo de blog de blog: ¿Cuánto tráfico debe pasar entre el cliente SMB y el servidor antes de que se inicie realmente Multicanal?.

SMB multicanal no agrega varios adaptadores de red de 10 GbE

Un adaptador de red de 10 GbE compatible con RSS a veces se identifica como no compatible con RSS. Cuando se produce este problema, SMB usa solo una conexión TCP. Cuando SMB multicanal usa adaptadores de red compatibles con RSS y no RSS, solo debe usar los adaptadores de red compatibles con RSS.

Los adaptadores de red de clase de servidor deben aparecer como compatibles con RSS. Si no lo hacen, actualice el controlador del adaptador de red desde el sitio web del fabricante y vuelva a comprobar la configuración de RSS.

Es posible que tenga que deshabilitar RSS en ambos adaptadores de red para agregar el rendimiento. Para obtener más información, consulte el siguiente artículo del blog Blog Archive: Windows Server 2012 File Server Tip: Asegúrese de que las interfaces de red son compatibles con RSS.

El adaptador de red virtual del host no funciona bien

El adaptador de red virtual del host no es compatible con RSS. Sin un adaptador de red compatible con RSS, SMB solo usa una conexión TCP. Este comportamiento se produce cuando se usan adaptadores de red de 10 GbE, adaptadores de red compatibles con RSS y formación de equipos NIC.

Para solucionar este problema, use varios adaptadores de red virtual para asegurarse de que tiene varias conexiones TCP. Para obtener más información, consulte el siguiente artículo del blog Blog Archive: Windows Server 2012 File Server Tip: Asegúrese de que las interfaces de red son compatibles con RSS.

Windows Server 2012 R2 registra periódicamente el identificador de evento SMBClient 30818

Supongamos que un equipo basado en Windows Server 2012 R2 usa un adaptador de red InfiniBand. Este adaptador usa la característica SMB Direct para admitir la comunicación de acceso directo a memoria remota (RDMA) entre los nodos del clúster y los hosts de Hyper-V. Después de reiniciar un host de Hyper-V, Windows podría registrar el identificador de evento 30818 en la ruta de acceso Registros de aplicaciones y servicios/Microsoft/Windows/SmbClient en Visor de eventos. Cuando esto ocurre, también puede experimentar problemas de rendimiento.

En Windows Server 2012 R2, el servicio LanmanServer inicia automáticamente el servicio SmbDirect. Sin embargo, si el servicio LanmanWorkstation se inicia primero e intenta abrir una conexión RDMA antes de que se cargue el servicio SmbDirect, Windows registra el identificador de evento 30818. Cuando el cliente se comunica inicialmente con el servidor a través de TCP/IP, usa la interfaz RDMA. Por lo tanto, no se necesita ninguna acción del usuario para recuperarse.

Microsoft está considerando proporcionar una solución para este problema en una versión futura de Windows Server.

Solución alternativa

Importante

Esta sección, método o tarea contiene pasos que le indican cómo modificar el Registro. No obstante, pueden producirse problemas graves si modifica el registro de manera incorrecta. En consecuencia, asegúrese de seguir estos pasos cuidadosamente. Como medida de protección, haga una copia de seguridad del registro antes de modificarlo para poder restaurarlo si se produce algún problema. Para obtener más información sobre cómo hacer una copia de seguridad del Registro y cómo restaurarlo, consulte Cómo realizar una copia de seguridad del Registro y restaurarlo en Windows.

Para solucionar este problema en Windows Server 2012 R2, configure el servicio SmbDirect para que se inicie automáticamente. Para ello, siga estos pasos:

  1. Abra Editor del Registro y, a continuación, vaya a la siguiente subclave del Registro:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\smbdirect

  2. Haga clic con el botón derecho en la entrada Iniciar registro y, a continuación, seleccione Modificar.

  3. En el cuadro Datos de valor , cambie el valor (el valor predeterminado es 3, lo que significa a petición) a 2 (automático).

Después de realizar este cambio, debería poder reiniciar el equipo sin mensajes del identificador de evento 30818 del registro de Windows. Si Windows continúa registrando estos eventos, es posible que algún otro problema impida la inicialización de la interfaz RDMA.

Al instalar Windows Server, Windows registra el identificador de evento 1.

Al instalar Windows Server 2019, Windows Server 2016 o Windows Server 2012 R2, Windows registra el identificador de evento 1. La información del evento es similar a la siguiente:

Nombre del registro: Microsoft-Windows-SMBWitnessClient/Administración
Origen: Microsoft-Windows-SMBWitnessClient
Id. de evento:1
Nivel: Error
Descripción: Error al inicializar el cliente testigo (el sistema no encuentra el archivo especificado).

Si se trata de una implementación nueva de Windows Server que no tiene roles ni características habilitados, puede omitir este evento de forma segura.

Problemas conocidos de SMB

Recolección de datos

Antes de ponerse en contacto con Soporte técnico de Microsoft, puede recopilar información sobre el problema.

Requisitos previos

  • Ejecute TSS en el contexto de seguridad de una cuenta que tenga privilegios de administrador en el sistema local. La primera vez que lo ejecute, acepte el CLUF. (Después de aceptar el CLUF, TSS no le solicitará de nuevo).
  • Se recomienda usar la RemoteSigned directiva de ejecución de PowerShell en el LocalMachine ámbito.

Nota:

Si la directiva de ejecución actual de PowerShell no le permite ejecutar TSS, realice las siguientes acciones:

  1. Establezca la RemoteSigned directiva de ejecución para el nivel de proceso mediante la ejecución del Set-ExecutionPolicy -scope Process -ExecutionPolicy RemoteSigned cmdlet .
  2. Para comprobar que el cambio surte efecto, ejecute el Get-ExecutionPolicy -List cmdlet .

Estos permisos de nivel de proceso solo se aplican a la sesión actual de PowerShell. Después de cerrar la ventana de PowerShell en la que se ejecuta TSS, el permiso asignado para el nivel de proceso se revierte al estado configurado anteriormente.

Recopilación de información clave antes de ponerse en contacto con el soporte técnico de Microsoft

  1. Descargue TSS en todos los nodos y expanda el archivo en la carpeta C:\tss .

  2. Abra la carpeta C:\tss en una ventana del símbolo del sistema de PowerShell con privilegios elevados.

  3. Inicie los seguimientos en el cliente y el servidor mediante la ejecución de los siguientes cmdlets:

    • Cliente:

      TSS.ps1 -Scenario NET_SMBcli
      
    • Servidor:

      TSS.ps1 -Scenario NET_SMBsrv
      
  4. Acepte el CLUF si los seguimientos se ejecutan por primera vez en el servidor o el cliente.

  5. Permitir grabación (PSR o vídeo).

    Nota:

    Si recopila registros tanto en el cliente como en el servidor, espere a que este mensaje aparezca en ambos nodos antes de reproducir el problema.

  6. Reproduzca el problema.

  7. Después de reproducir el problema, escriba Y para finalizar el registro de datos.

TSS almacena los seguimientos en un archivo comprimido en la carpeta C:\MS_DATA . Puede cargar el archivo en el área de trabajo para su análisis.

Referencias