How to check SMB version on Windows 10/8/7

SMB or Server Message Block Protocols are used to connect your computer to an external server. Windows 10 ships with support of these protocols but they are disabled in the OOBE. Currently, Windows 10 supports SMBv1, SMBv2, and SMBv3 as well. Different servers depending upon their configuration require a different version of SMB to get connected to a computer. But in case you are using Windows 8.1 or Windows 7, you can check if you have it enabled too. That’s what we are going to do today.

How to check SMB version on Windows

First of all, if you have Windows 7, you should not be disabling SMB v2. This is due to the following reasons:

  • Request compounding – allows for sending multiple SMB 2 requests as a single network request
  • Larger reads and writes – better use of faster networks
  • Caching of folder and file properties – clients keep local copies of folders and files
  • Durable handles – allow for connection to transparently reconnect to the server if there is a temporary disconnection
  • Improved message signing – HMAC SHA-256 replaces MD5 as the hashing algorithm
  • Improved scalability for file sharing – the number of users, shares, and open files per server greatly increased
  • Support for symbolic links
  • Client oplock leasing model – limits the data transferred between the client and server, improving performance on high-latency networks and increasing SMB server scalability
  • Large MTU support – for full use of 10-gigabyte (GB) Ethernet
  • Improved energy efficiency – clients that have open files to a server can sleep.

Even if you are on Windows 8.1 or Windows 10, you should not be disabling SMB v3 or SMB v2 because, in addition to the above problems, you might face the following issues too which come with disabling SMB v3:

  • Transparent Failover – clients reconnect without interruption to cluster nodes during maintenance or failover
  • Scale Out – concurrent access to shared data on all file cluster nodes
  • Multichannel – aggregation of network bandwidth and fault tolerance if multiple paths are available between client and server
  • SMB Direct – adds RDMA networking support for very high performance, with low latency and low CPU utilization
  • Encryption – Provides end-to-end encryption and protects from eavesdropping on untrustworthy networks
  • Directory Leasing – Improves application response times in branch offices through caching
  • Performance Optimizations – optimizations for small random read/write I/O.

Methods to check what version of SMB is installed on the Server

We will be using the following methods to check what version of SMB is installed on your computer:

  1. The PowerShell Method.
  2. The Registry Editor Method.

1] The PowerShell Method

If you wish to check what version of SMB you are running, you can just type in the following in the cmdlet for PowerShell:

SMB v1 Windows 10 and Windows 8.1

Get-WindowsOptionalFeature –Online –FeatureName SMB1Protocol

SMB v2 Windows 10 and Windows 8.1

Get-SmbServerConfiguration | Select EnableSMB2Protocol

SMB v1 Windows 7

Get-Item HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}

SMB v2 Windows 7

Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}

If it returns the value as True, it is enabled, else is disabled.

2] The Registry Editor Method

Type regedit in Start Search and hit Enter. Once Registry Editor opens, navigate to the following key-

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

Now if you have the DWORDs named as SMB1 or SMB2, check their Value Data.

If it is set to 0, it is disabled.

And in any other case, it is enabled.

Methods to check what version of SMB is installed on Clients

We will be using the following methods to check what version of SMB is installed on your computer,

  1. The PowerShell Method.
  2. The Group Policy Editor Method.

1] The PowerShell Method

So, if you wish to check what version of SMB you are running, you can just type in the following in Command Prompt with Administrator Level privileges,

SMB v1 Windows 10 and Windows 8.1

sc.exe qc lanmanworkstation

SMB v2 Windows 10 and Windows 8.1

sc.exe qc lanmanworkstation
How to check SMB version on Windows

2] The Group Policy Editor Method

It is worth noting that this method will not work on Windows 10 Home or equivalent edition of Windows 8 or Windows 7.

Open Run box, type gpedit.msc and hit Enter to open the Local Group Policy Editor. Navigate to the following path:

Computer Configuration > Windows Settings

Under Registry, look for Registry Item with the following Properties,

Action: Update

Hive: HKEY_LOCAL_MACHINE

Key Path: SYSTEM\CurrentControl\services\mrxsmb10

Value Name: Start

Value type: REG_DWORD

Value Data: 4

If the Value Data is set to 4, SMB is Disabled.

For a detailed read visit microsoft.com.

Related read: Why and how to disable SMB1 on Windows 10/8/7.

Download this VPN to secure all your Windows devices and browse anonymously
Posted by on , in Category Windows with Tags
Ayush has been a Windows enthusiast since the day he got his first PC with Windows 98SE. He is an active Windows Insider since Day 1 and is now a Windows Insider MVP. He has been testing pre-release services on his Windows 10 PC, Lumia, and Android devices.

Leave a Reply

Your email address will not be published. Required fields are marked *


5 + 5 =