Metanis
Well-Known Member
- Reaction score
- 879
- Location
- Medford, WI, USA
Since upgrading to Windows 10 I've experienced network browsing issues here in my home/office/lab gigabit ethernet environment. After troubleshooting and experimentation I wanted to share a tip that hasn't seen wide dissemination.
Windows 10 (like 8.0, 8.1, and Server 2012 and 2012R2) defaults to SMB 3.0. Server Message Block is the higher-level protocol that Microsoft uses for file sharing. Windows 7 and Server 2008 used SMB 2.1. Windows Vista used 2.0 and Windows NT and XP used 1.0. This is important for file sharing and computer browsing because machines won't "see" each other if they are using different versions of SMB.
Microsoft defaults Windows 10 to using the 3.0 version EVEN if the the underlying network is comprised of older machines and servers. However, Windows 10 ships with SMB 1.0/CIFS support as an optional feature. If you need to interact with older network clients or servers install the SMB 1.0 feature using the Programs and Features module in the Control Panel. I found however that installing it wasn't always enough to ensure the Win10 machines could browse the network.
Keep in mind that every Windows machine is both a network client and a network server. Also, for the sake of configuration, SMB 2 and SMB 3 are married. You can configure SMB 1 separately, but when you configure SMB 2 you also get SMB 3 on a Win8 or 10 platform. The following commands executed in an administrative command prompt on your Win 10 machine will enable it to communicate in every flavor of SMB.
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto
sc.exe config mrxsmb20 start= auto
reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /v SMB1 /t REG_DWORD /d 1 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /v SMB2 /t REG_DWORD /d 1 /f
powershell set-smbserverconfiguration -enablesmb1protocol $true
powershell set-smbserverconfiguration -enablesmb2protocol $true
Windows 10 (like 8.0, 8.1, and Server 2012 and 2012R2) defaults to SMB 3.0. Server Message Block is the higher-level protocol that Microsoft uses for file sharing. Windows 7 and Server 2008 used SMB 2.1. Windows Vista used 2.0 and Windows NT and XP used 1.0. This is important for file sharing and computer browsing because machines won't "see" each other if they are using different versions of SMB.
Microsoft defaults Windows 10 to using the 3.0 version EVEN if the the underlying network is comprised of older machines and servers. However, Windows 10 ships with SMB 1.0/CIFS support as an optional feature. If you need to interact with older network clients or servers install the SMB 1.0 feature using the Programs and Features module in the Control Panel. I found however that installing it wasn't always enough to ensure the Win10 machines could browse the network.
Keep in mind that every Windows machine is both a network client and a network server. Also, for the sake of configuration, SMB 2 and SMB 3 are married. You can configure SMB 1 separately, but when you configure SMB 2 you also get SMB 3 on a Win8 or 10 platform. The following commands executed in an administrative command prompt on your Win 10 machine will enable it to communicate in every flavor of SMB.
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto
sc.exe config mrxsmb20 start= auto
reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /v SMB1 /t REG_DWORD /d 1 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /v SMB2 /t REG_DWORD /d 1 /f
powershell set-smbserverconfiguration -enablesmb1protocol $true
powershell set-smbserverconfiguration -enablesmb2protocol $true