跨子网启用 Samba 共享

跨子网启用 Samba 共享

我很好奇如何设置 SAMBA,以便可以在不同的子网中看到和使用共享。我们有一些绑定到 Active Directory 的 Linux 设备,我们希望它们为位于与服务器所在子网不同的子网中的客户端提供 SAMBA 共享?有没有办法做到这一点,而不需要设置 WINS 服务器或使用传统的 NetBIOS 方法,因为我们的大多数客户端是 Windows 7、Windows Server 2003、Windows Server 2008 和 Macintosh OS X(10.6 或更新版本)?

编辑

目前,只有与 SAMBA 服务器位于同一子网中的客户端才能看到共享。子网之外的客户端(即客户端子网)无法看到或连接到共享。

返回的错误是:指定的网络名称不再可用。我使用 IP、FQDN 或 NetBIOS 名称尝试连接到共享似乎没有关系。

我们有一个通用的 Cisco 路由器来处理子网间路由。此网络设置下的其他一切似乎都正常工作,并且可以从多个子网 ping 设备。我也不认为这是防火墙类型的问题,因为此段的规则相当宽松。

答案1

QNAP 台湾的 Daniel 帮助我解决了这个问题,结果发现这与工作站需要签署 CIFS 通信有关,而 QNAP 尚未这样做。

如果您在另一个子网中的工作站上关闭此注册表项(设置为零),它将允许 CIFS 与 QNAP 进行通信。

HKLM\SYSTEM\CurrentControlSet\services\LanmanWorkstation\Parameters\RequireSecuritySignature

我忘记了我们在另一个子网中的 Windows 7 工作站上收到的确切错误代码,但这是一个模糊且毫无意义的通用错误消息,不同于“指定的网络名称不再可用”。但是,症状是相同的:与 QNAP 位于同一子网上的系统运行良好,其他子网上的系统出现故障。

QNAP 表示,他们可能会通过设置 QNAP 来签署其 CIFS 通信来解决此注册表项设置问题,但没有交付时间表。

答案2

我的第一反应是,您遇到了名称解析问题。使用 UNC 中服务器计算机的 IP 地址,从与服务器计算机不同子网上的客户端访问共享文件夹应该可以成功访问。假设确实如此,则您遇到了名称解析问题。

不过,您评论说您无法使用 IP 地址或 FQDN 访问共享文件夹,这让我很困惑。我会启动tcpdumpSamba 服务器(或调高日志级别)并确保您确实看到了来自客户端的连接尝试。一旦您确定连接尝试确实到达了 Samba,Samba 的调试日志记录可能会为您提供最佳诊断。

回复:长期名称解析策略 - 使用您描述的客户端,您可以使用 DNS 来解析服务器计算机的名称。除非您在 Windows Server 2003 上禁用 NetBIOS,否则您可能会看到 NetBIOS 解析超时的一些延迟。(我不记得 Windows Server 2008 和 Windows 7 是否会在 DNS 解析之前尝试 NetBIOS 解析。)

不使用 NetBIOS,您将无法获得“网络浏览”功能。这意味着没有“我的网络位置”等。如果您需要这些,请设置 WINS 服务器并使用 NetBIOS。

相关内容