peerdistsh.dll:对等分发缓存的管理侧模块
文件身份:peerdistsh.dll 位于 %SystemRoot%\System32,官方描述为 Peer Distribution NetShell Helper。它本身既不是服务,也不是常驻进程,而是被 netsh.exe 加载的辅助 DLL,为 Windows 的对等分发(Peer Distribution,即 BranchCache 的分布式缓存子系统)提供命令行管理入口。与之配套运行的核心服务是 PeerDistSvc。
核心功能
- 注册 netsh 上下文:向 NetShell 注册
peerdist 上下文,使用户可以在命令行执行 netsh peerdist 系列子命令。 - 参数解析与校验:对 set、show、export、delete 等子命令的参数做语法分析与合法性检查,非法输入会直接返回错误码,而不下发到服务层。
- 配置下发与读取:通过 PeerDistSvc 暴露的 WMI 提供程序与 RPC 接口,读写缓存模式(分布式缓存 / 托管缓存)、缓存大小上限、内容存储路径、客户端发现方式等策略项。
- 状态呈现:把服务返回的结构化数据格式化为控制台可读的输出,例如当前缓存占用、已发布内容的哈希列表、对等端统计信息。
- 与组策略协同:命令行设置的项最终落到注册表,与组策略写入的同名配置项共用同一生效链路,便于批量脚本化运维。
缺失或损坏的影响
- 管理面失效:执行
netsh peerdist 会提示无法初始化上下文或找不到该命令,运维脚本、部署工具链中的自动化配置步骤随之中断。 - 排障能力下降:无法通过原生命令查询缓存状态与已发布内容,只能改用 PowerShell 的 BranchCache 模块或组策略间接排查,定位效率明显降低。
- 系统完整性告警:SFC 与 DISM 扫描会记录该文件的哈希不匹配项,事件日志中出现旁加载或加载失败的相关条目。
- 数据面基本不受冲击:PeerDistSvc 服务与缓存分发逻辑并不依赖该 DLL,分支机构的带宽优化、内容预取等实际传输能力仍可正常工作,系统启动与登录也不会因此失败。
修复思路
优先执行 sfc /scannow 与 DISM /Online /Cleanup-Image /RestoreHealth;若仍缺失,可在“启用或关闭 Windows 功能”中重新勾选 BranchCache,或通过 Enable-WindowsOptionalFeature 重新部署该组件,确保替换文件的版本号与当前系统构建号一致。