标签: server-message-block

如何确定 SMB 客户端是否已与我的 Windows Server 2012 建立签名 SMB 通信?

有没有办法从我的 Windows 2012 Server 中查找客户端是否已建立签名通信

Net Session提供了基本细节,但没有提及任何有关签名的信息。

C:\>net session \\a.b.c.d
User name       Administrator
Computer        a.b.c.d
Guest logon     No
Client type
Sess time       00:08:02
Idle time       00:07:50

Share name     Type     # Opens

--------------------------------------
test           Disk     0
The command completed successfully.
Run Code Online (Sandbox Code Playgroud)

是否有任何Powershell cmdlet或任何管理工具或命令可以提供此类信息?提前致谢。

编辑1:我也尝试了以下方法。应在客户端上执行Get-SmbConnection以查找客户端已建立连接的服务器。

PS C:\Users\Administrator> Get-SmbConnection | Select-Object -Property *
ContinuouslyAvailable : False
Credential            : domain\administrator
Dialect               : 3.00
Encrypted             : False
NumOpens              : 3
ServerName            : server1
ShareName             : test
UserName              : SERVER1\Administrator …
Run Code Online (Sandbox Code Playgroud)

network-share server-message-block windows-server-2012

7
推荐指数
1
解决办法
3万
查看次数

禁用服务器 2012 上特定 NIC 的 SMB 共享

我有两台运行 Windows 2012 R2 的服务器,其中一台是 SMB 服务器,另一台是 iSCSI 服务器,客户端使用的是 Win7 x64。

现在我想在客户端和服务器上使用 2 个 NIC 在 iSCSI 和 SMB 之间分离网络。为此,我需要在 SMB 服务器的内部 NIC 上禁用 SMB,并启用外部 NIC SMB 功能。

但是我在禁用服务器 2012 R2 上特定 NIC 的 SMB 共享时遇到问题

取消选中文件和打印机共享没有任何效果。有没有其他方法可以做到这一点?

注意:我阅读了 SMB Multichannel,但问题是,我客户的规格似乎与 Win10 不兼容。与 Win7 相比,它非常滞后

server-message-block

7
推荐指数
1
解决办法
455
查看次数

通过 ZFS 或 Samba 替代本地 SMB/CIFS

我完全不知道ZFS 上的本地 SMB/CIFS。这个 wiki 文档没有提到性能差异。两者之间存在什么样的性能差异?

zfs filesystems server-message-block cifs

6
推荐指数
1
解决办法
1万
查看次数

使用 HA-Proxy 对 Windows 文件共享进行负载平衡

在将我的头发拉出 DFS 之后,我突然想到了这个奇怪且具有潜在危险的想法,因此,可能我可以使用 HA-Proxy 来负载平衡服务器之间的文件共享。

我已经完成了一些补救数据包跟踪,看起来 TCP 端口 445 是使用 Windows 文件共享所涉及的唯一问题。多年来,我一直认为 UDP 139、135 等也至少参与建立连接 - 但显然不是!

所以我设置了一个基本的测试:

listen SMBTest *:445
  mode tcp
  server Smb1 172.16.61.201:445
  server Smb2 172.16.61.202:445
Run Code Online (Sandbox Code Playgroud)

你永远不会猜到是什么......它有效???(!)

现在显然有关于文件服务器之间同步的全部问题(当然)。这可以通过一点 Robocopy 脚本轻松解决。

考虑到我只需要一个 HA 只读文件共享,文件锁定等不会有任何问题。

  • 谁能告诉我我在这里玩的是火吗?我真的不认为它会起作用,现在我有点震惊。
  • 有什么缺点?
  • 这可以依赖于生产环境吗?

file-sharing samba load-balancing server-message-block haproxy

6
推荐指数
1
解决办法
1万
查看次数

是否有一个标志可以传递给 `df` 或 `mount` 以使它们仅显示本地安装的文件系统的结果?

每当我检查本地安装的文件系统的情况时,我都非常厌倦必须手动 egrep 退出 NFS 和 SMB 安装的文件系统。因此,我的问题是:是否有一些标志组合可以传递给其中之一,df或者mount强制它们仅显示本地文件系统并跳过任何和所有网络安装的文件系统?

linux nfs grep mount server-message-block

6
推荐指数
2
解决办法
1万
查看次数

2008R2 拥有 PDC FSMO 角色的 DC 不会成为域主浏览器

上周六,我们将一台新的虚拟 2008R2 服务器升级为 dc,并将所有 FSMO 角色转移给它。今天我们花了一整天的时间来追查域浏览器功能的问题。

首先介绍一下背景:

  • 我们有一个包含大约 30 个站点/子网的 WAN。大多数站点都有一个运行 2000 或 2003 的 DC。在安装 2008R2 (ntads04) 之前,我们在主站点上有两个 2000 (ntads01, ntads02) 和一个 2003 (ntads03) DC。
  • 2003 服务器从来不是 FSMO 角色的所有者。角色直接从 ntads01 转移到 ntads04。
  • 旧主 DC (ntads01) 的 IP 已更改,ntads04 已分配给它。所有 DC 仍在运行。
  • WINS 安装在主站点的所有三个 DC 上。这两个 2000 DC 在 DHCP 中被列为 WINS 服务器。

问题信息

今天早上的问题是,xp 机器之间的网络发送停止工作。我们开始调查。

在 ntads04 上的事件日志中,我们有消息,其他站点上的 DC 被检测为主浏览器,并且本地主浏览器关闭或强制选举。(消息是德语抱歉)。事件日志 xml 如下。

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="bowser" /> 
    <EventID Qualifiers="49152">8003</EventID> 
    <Level>2</Level> 
    <Task>0</Task> 
    <Keywords>0x80000000000000</Keywords> 
    <TimeCreated SystemTime="2011-12-06T16:46:16.873033800Z" /> 
    <EventRecordID>19226</EventRecordID> 
    <Channel>System</Channel> 
    <Computer>ntads04.domain.local</Computer> …
Run Code Online (Sandbox Code Playgroud)

server-message-block wins windows-server-2008-r2

6
推荐指数
1
解决办法
3189
查看次数

如何确定哪个 SMB 客户端/会话在 Server 2008R2 Windows 文件服务器上打开了特定文件?

我需要的是一种将客户端名称或 IP 地址与打开的文件相关联的方法,以便我可以干净地关闭文件以进行维护。NET SESSION不显示打开文件的名称,也不显示打开文件NET FILE的客户端。我曾希望我可以交叉引用来自这两个命令的数据,但这似乎不可能。我看到的其他所有内容都提供与这些命令相同的数据,但没有明显的方法来确定哪个客户端机器打开了文件。


澄清:我不想强制关闭服务器上的文件,冒着文件损坏的风险并导致客户端程序崩溃。

network-share server-message-block windows-server-2008-r2

6
推荐指数
2
解决办法
9293
查看次数

SMBD 守护程序在 Windows 8 客户端连接时 CPU 使用率达到 100%

我有一台运行 Ubuntu 12.04 的服务器作为 Samba 服务器运行。文件系统是 LVM 物理驱动器池上的 XFS 格式虚拟驱动器。

我最近将我们的客户端升级到 Windows 8,我注意到客户端连接 Ubuntu 服务器上的 SMB 共享有 6-8 秒的延迟。在 Windows 7 中,没有这样的延迟。在 Ubuntu 服务器上,SMBD 进程在与共享的初始连接期间会在几秒钟内达到 100% CPU 使用率。

strace显示 smbd 在该连接期间一遍又一遍地打开 /etc/passwd。我的客户应该以访客身份连接(无身份验证)。

open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 28
_llseek(28, 0, [0], SEEK_CUR)           = 0
fstat64(28, {st_mode=S_IFREG|0644, st_size=1568, ...}) = 0
mmap2(NULL, 1568, PROT_READ, MAP_SHARED, 28, 0) = 0xb6de2000
_llseek(28, 1568, [1568], SEEK_SET)     = 0
fstat64(28, {st_mode=S_IFREG|0644, st_size=1568, ...}) = 0
munmap(0xb6de2000, 1568)                = 0
close(28)                               = 0
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 28 …
Run Code Online (Sandbox Code Playgroud)

ubuntu server-message-block smb-conf windows-8

6
推荐指数
1
解决办法
1795
查看次数

如何防止 TCP ZeroWindow 将大文件写入 Windows 共享?

我已获得访问 Windows Server 2003 SP1 系统 (10.a.bbb.ccc) 上的共享的权限,该系统是一个文件和打印机服务器,并且经常将大文件复制到该共享。但是,有时这样的副本会失败。使用 Robocopy(在 10.xxx.yy.zzz 上)重现此问题时,我得到类似

 70.4%
2013/07/31 11:20:21 ERROR 64 (0x00000040) Copying File <<file name removed>>
The specified network name is no longer available.

Waiting 30 seconds... Retrying...
         New File          105.2 m   <<file name removed>>
  0.0%
Run Code Online (Sandbox Code Playgroud)

dumpcap + Wireshark 显示,当发生这种情况时,在复制过程中,服务器突然不再接受 TCP 端口 445 上的任何数据,方法是将窗口大小设置为零:

No.     Time           Source                Destination           Protocol Length Info
   7303 5.841186000    10.a.bbb.ccc          10.xxx.yy.zzz         TCP      60     [TCP ZeroWindow] microsoft-ds > 57918 [ACK] Seq=10864 Ack=6973070 Win=0 Len=0
   7304 6.149715000    10.xxx.yy.zzz         10.a.bbb.ccc          TCP      55     [TCP …
Run Code Online (Sandbox Code Playgroud)

networking windows server-message-block tcp tcp-window

6
推荐指数
1
解决办法
1万
查看次数

如何处理 SMB 共享名称的区分大小写?

\\host.example.com\ShareName\Tail\Components
  |______________| |_______| |_____________|
        host         share        tail
Run Code Online (Sandbox Code Playgroud)

我可以在 UNC 路径的尾部组件上找到大量资源,并且我假设主机组件遵循区分大小写的 DNS 规则,但是共享名又如何呢?

当您仅连接到主机而不指定共享名称时,您要连接的实现可以向您发送正确的共享大小写。当您直接连接到共享时,情况将如何处理?

我只能在 Samba 手册中看到一行,说明“部分和参数名称不区分大小写”,这实际上并没有说明任何一种方式(部分名称用于创建共享,但与该共享的连接可以以不同的方式处理)。我在 Windows 共享文件夹帮助中看不到有关案例的提及。

这是否意味着共享名实际上不区分大小写,并且没有人想过将其明确化,或者有人可以向我指出文档吗?


编辑:

根据微软的SMB2规范

服务器必须按照 [MS-DTYP] 第 2.2.49 节中的指定解析缓冲区字段,以提取主机名和共享名组件。如果 Buffer 字段不是第 2.2.9 节中指定的格式,服务器必须使请求失败并返回 STATUS_INVALID_PARAMETER。否则,服务器必须提供从请求消息中解析的元组 <hostname, sharename> 以调用 [MS-SRVS] 第 3.1.6.8 节中指定的事件,通过解析服务器别名和评估共享范围来规范主机名。服务器必须使用<规范化主机名,共享名>在ShareList中查找共享。如果没有找到具有匹配的共享名称和服务器名称的共享,则服务器必须使请求失败并返回 STATUS_BAD_NETWORK_NAME。

因此,共享名没有标准化,而且我找不到任何表明合规实现必须不区分大小写地执行匹配的内容。

理想情况下,我正在寻找一些文档或来自在 Windows 和 Samba 之外的多种实现上测试过此问题的人的答案,讨论他们的发现。

network-share server-message-block

6
推荐指数
1
解决办法
4567
查看次数