none
Windows Defender 导致 SMB文件无法读取! RRS feed

  • 问题

  • 个人环境:

    A电脑使用最新的 Windows 10 1809 企业版(1803也一样)。B电脑使用 Windows Server 2016 Datacenter 。且AB两台电脑 Windows Defender 均处于开启状态下。

    当A电脑设置SMB共享后,B电脑使用\\计算机名称\目录名称,可以访问A电脑共享的文件目录及文件名称,却不能读取A电脑的文件,具体表现:当在B电脑复制A电脑文件时,B电脑资源管理器会停止响应,B电脑一直在读取A电脑共享的文件信息,却没有响应,但是的但是,测试过1KB的文本文件却没有问题,可以自由复制粘贴。B电脑往A电脑复制文件没问题,一直正常。

    如果尝试安装第三方病毒防护软件,例如 QQ 管家后,这时 Windows Defender 部分功能处于关闭状态下,B电脑访问A电脑就正常了。我已经反反复复重装系统,反反复复修改注册表,安装SMB V1/V2,关闭 Windows Defender 防火墙,确认 SMB 服务开启,确认 共享权限 为 完全控制,都无效。即便是全新安装的系统,只要 Windows Defender 完全处于开启状态,就只能读文件名称列表,无法复制。

    最后,如果 Windows Defender 处于开启状态下,同样的网络环境,拷贝速度最多54MB/s,当关闭后,速度会提升到76MB/s。

    简而言之:

    ①、不安装 QQ 电脑管家:A往B拷贝文件,B资源管理器停止响应,B往A拷贝文件正常。安装QQ电脑管家后:A往B拷贝文件正常,B往A拷贝文件正常

    ②、安装 QQ 电脑管家后:拷贝速度由原来的54MB/s提升到76MB/s,也就是Windows Defender还影响了网络传输效率

    之前和贵司工程师沟通的部分信息:answers.microsoft.com/zh-hans/windows/forum/windows_10-files/windows-defender-%e5%af%bc%e8%87%b4/6246f14a-a131-4a4a-a85a-f621af4b1f58?tm=1538873812355

    2018年10月11日 1:57

答案

  • 用某呼的批处理搞好了(依然装了管家),用了一天多,重启后失效了,现在添加注册表:

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters]
    "DisabledComponents"=dword:00000020
    算是暂时解决了,待长期测试,原因是windows 10 默认ipv6优先级最高,ipv6 SMB有问题。改成ipv4 就行了,
    改成功与否,可以ping主机名测试一下就知道了,如果返回ipv4就ok了

    今晚还发现:在A电脑ping B电脑主机名,不通,B ping A是通的,SMB使用主机名访问,自然有问题了。

    还希望微软大神反馈一下这个bug啊:smb默认使用主机名连接,主机名解析到ipv6导致共享出问题。

    • 已标记为答案 renyan52099 2018年10月19日 15:17
    • 已编辑 renyan52099 2018年10月19日 15:28 内容补充
    2018年10月19日 15:17

全部回复

  • 你好:
    基于你的描述,如果安装了QQ电脑管家,Windows Defender部分功能处于关闭状态时问题就不存在,似乎是Windows Defender的问题,但是关闭Windows Defender防火墙又无效,所以还是挺奇怪的。
    建议首先确保Windows系统已安装最新的更新,并尝试使用控制面板中的疑难解答来查找共享文件夹的问题,并且打开注册表编辑器,找到HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters这一项,在里面添加DirectoryCacheLifetime Dword=0进行测试。(注意:修改注册表值前建议要先备份注册表)
    希望可以帮助到您!

    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2018年10月14日 15:35
  • 感谢回复,我会抓紧时间测试后反馈测试结果到社区。
    2018年10月16日 2:00
  • 我今晚上再次卸载QQ电脑管家,恢复Windows Defender 为默认,添加您给的注册表,依然无效,打开 事件查看器-->应用程序和服务日志-->Microsoft-->Windows-->SMBServer-->Operational,看到有大量的日志,如下:

    重新打开失败。

    客户端名称: [fe80::e107:190e:d62a:bf5d]
    客户端地址: [fe80::e107:190e:d62a:bf5d36]:56731
    用户名: xxxx
    会话 ID: 0x480000000001
    共享名称: D
    文件名称: xxxx.mp4
    恢复密钥: {301738b5-d139-11e8-b156-b8aeed740cbf}
    状态: 找不到对象名。 (0xC0000034)
    RKF 状态: STATUS_SUCCESS (0x0)
    持久: false
    弹性: false
    永久: false
    原因: Reconnect durable file

    + System 
      - Provider 
       [ Name]  Microsoft-Windows-SMBServer 
       [ Guid]  {d48ce617-33a2-4bc3-a5c7-11aa4f29619e} 
        EventID 1016 
        Version 0 
        Level 2 
        Task 1016 
        Opcode 0 
        Keywords 0x2000000000000008 
       - TimeCreated 
       [ SystemTime]  2018-10-16T16:10:10.577812300Z 
        EventRecordID 89 
        Correlation 
       - Execution 
       [ ProcessID]  4 
       [ ThreadID]  4860 
        Channel Microsoft-Windows-SMBServer/Operational 
        Computer NUC 
       - Security 
       [ UserID]  S-1-5-18 
     - UserData 
      - EventData 
       Status 0xc0000034 
        TranslatedStatus 0xc0000034 
        RKFStatus 0x0 
        TranslatedRKFStatus 0x0 
        ConnectionGUID {a8fa0a22-656a-0001-2f0c-faa86a65d401} 
        ClientNameLength 29 
        ClientName \\[fe80::e107:190e:d62a:bf5d] 
        ClientAddressLength 28 
        ClientAddress 1700DD9B00000000FE80000000000000E107190ED62ABF5D0F000000 
        ShareNameLength 1 
        ShareName D 
        UserNameLength 17 
        UserName NUC\Administrator 
        SessionId 0x480000000001 
        FileNameLength 36 
        FileName xxx 
        DurableHandle false 
        ResilientHandle false 
        PersistentHandle false 
        ResumeKey {301738b5-d139-11e8-b156-b8aeed740cbf} 
        Reason 1

    指导:

    客户端尝试重新打开一个持续可用的句柄,但是尝试失败。这通常表示网络存在问题或基本文件被重新打开。

    2018年10月16日 16:35
  • 很简单。你用了个杀毒软件。还是实时的。你每个文件操作它都要扫。扫的时候你的cpu和磁盘占用高。性能变差。有一天你下了个病毒,发现无法读取,不解,过来求教。

    和网络没啥关系。

    2018年10月18日 5:05
  • 很简单。你用了个杀毒软件。还是实时的。你每个文件操作它都要扫。扫的时候你的cpu和磁盘占用高。性能变差。有一天你下了个病毒,发现无法读取,不解,过来求教。

    和网络没啥关系。

         本来不削你的这种无聊回复的,但是忍不住想请问下:1、你用什么东西证明我下载了个病毒?2、你用什么东西证明我的机器被占用到很高?我的机器有无病毒我清楚,谢谢!

         请认真审题,个人手里面那么多服务器,家里面3台主机加一台多网口软路由,折腾过无数网络和操作系统问题,参与过某第三方团队的系统驱动封装,系统组件集成。家里面的网线都是自己搭建的。个人还兼职公司网管,对思科、华为、华三等等网络设备还算知道一点点。个人认为水平不至于低到你说的这个地步。

          回到主题,全新安装的系统(删除所有分区重建、恢复bios为默认),刚装好打开SMB,不能读取,装上管家,立马可以,卸载掉管家装回来不行,但是借住某呼批处理,又可以了。

    2018年10月19日 2:21
  • 1.哇,你要削我?可以可以。

    2.你不是来问的。

    3.我我没遇到过。

    4.如果是bug,它绝对不会是个例

    2018年10月19日 2:55
  • 用某呼的批处理搞好了(依然装了管家),用了一天多,重启后失效了,现在添加注册表:

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters]
    "DisabledComponents"=dword:00000020
    算是暂时解决了,待长期测试,原因是windows 10 默认ipv6优先级最高,ipv6 SMB有问题。改成ipv4 就行了,
    改成功与否,可以ping主机名测试一下就知道了,如果返回ipv4就ok了

    今晚还发现:在A电脑ping B电脑主机名,不通,B ping A是通的,SMB使用主机名访问,自然有问题了。

    还希望微软大神反馈一下这个bug啊:smb默认使用主机名连接,主机名解析到ipv6导致共享出问题。

    • 已标记为答案 renyan52099 2018年10月19日 15:17
    • 已编辑 renyan52099 2018年10月19日 15:28 内容补充
    2018年10月19日 15:17