必须先建立活跃smb连接,再以管理员权限运行get-smbconnection命令查看smbversion列值(如3.1.1或2.1);若为空需手动访问共享路径触发会话,结合encrypted字段判断是否为smb 3.x加密连接。

要在Windows 11中通过命令行准确获知当前正在使用的SMB协议版本,必须确保已建立至少一个活跃的SMB连接,否则Get-SmbConnection将返回空结果——这一步是后续所有判断的前提,不能跳过。
以管理员身份启动PowerShell
按 Win + X → 选择“Windows Terminal(管理员)”或“Windows PowerShell(管理员)”。【必须用管理员权限】,普通用户权限下该命令无法读取系统级SMB连接信息。
执行Get-SmbConnection获取实时连接详情
在终端中直接输入以下命令并回车:
Get-SmbConnection
若已有连接(例如你刚访问过\NAS-01share或映射了Z:盘指向局域网共享),输出将包含ServerName、ShareName、SmbVersion、Encrypted等列。【SmbVersion列的值就是实际协商使用的协议版本,如3.1.1或2.1】;若为空,则说明当前无任何活跃SMB会话,需先手动触发一次访问(比如在文件资源管理器中打开一个共享路径)。
筛选并精简输出内容
方法一:只看服务器名和协议版本
Get-SmbConnection | Select-Object ServerName, SmbVersion
方法二:同时查看是否启用加密传输(判断是否为SMB 3.x安全连接)
Get-SmbConnection | Select-Object ServerName, SmbVersion, Encrypted
注意:Encrypted为True时,基本可确认使用的是SMB 3.0及以上版本;若为False且SmbVersion显示2.1,则大概率走的是未加密的SMB 2.1通道,常见于旧NAS或禁用加密的服务器配置。
验证连接是否真实生效
第一步:在文件资源管理器地址栏输入一个已知有效的共享路径,例如\192.168.1.100Public,按回车访问一次;
第二步:立即回到PowerShell窗口再次运行Get-SmbConnection;
第三步:观察SmbVersion字段是否出现非空值。如果仍为空,说明网络层未真正建立SMB会话——可能是防火墙拦截、目标设备未响应、或本地SMB客户端服务异常停止。











