Windows Server 2019 LMHOSTS 文件不起作用

Windows Server 2019 LMHOSTS 文件不起作用

我正在尝试使用 hosts/lmhosts 文件在我的新 Windows 2019 Server 上创建各种别名。它位于企业 Active Directory 域中。在 TCP/IP 属性中选中了“使用 LMHOSTS”。

在场景 1 中,我想为同一台机器创建一些别名。我将以下几行放入C:\Windows\System32\drivers\etc\lmhosts

# loopback alias
127.0.0.1    myname1
# real IP alias
10.1.2.3     myname2

相应地C:\Windows\System32\drivers\etc\hosts

127.0.0.1    myname1
10.1.2.3     myname2

然后我重新启动了serverlmhosts服务,并尝试使用 和 Windows 资源管理器访问它们net use \\myname1/2。它们都提示输入登录凭据,并反复拒绝我。这些名称在其他地方不存在,因为当我使用hostslmhosts空白尝试它们时,我收到“未找到网络路径”的消息。我可以 ping 名称,它显示正确的 IP。

在场景 2 中,我正在尝试为另一台服务器创建hosts/lmhosts别名。

10.11.12.13    alias1

我像以前一样重新启动,然后net use出现“系统错误 53 已发生。您未连接,因为网络上存在重复的名称。”当然,别名 1 并不存在于任何地方。我没有与真实服务器建立任何其他连接。我使用net use和验证了这一点netstat

在场景 3 中,我尝试创建一个hosts/lmhosts 覆盖另一台服务器。

10.1.2.3    otherserver

我像以前一样重新启动,这次net use出现“发生系统错误 64。指定的网络名称不再可用。”当我 ping 其他服务器时,它使用我指定的本地计算机的正确 IP 地址。

所以我最大的疑问是这个。我到底做错了什么,还是微软在 2019 年对 LMHOSTS 做了什么导致它崩溃?我试过了ipconfig /flushdnsnbtstat -R我试过#PRElmhosts 指令。什么都没用。

还有一件事,我已打开 SMB 审核,在 SMBServer/Security 事件日志中,有相应的 SMB 会话身份验证失败条目。客户端地址是本地计算机。有一行突出的内容:“SPN:在可以查询 SPN 之前会话设置失败”。

我愿意尝试创建机器别名的其他方法。但主要任务是屏蔽另一台服务器,以便其 UNC 路径在本地解析。

谢谢。

答案1

我到底做错了什么

最有可能的不是名称解析(这是在您的主机中完成的),而是文件服务器名称本身。Windows 服务器确实会监听对其名称的请求。

您可以使用以下命令为您的服务器添加别名 netdom

c:\> netdom computername <computername> /add:<aliasname.fqdn.local>

你会不是netdom如果使用正确,则需要修补您的 hosts/lmhosts 。

答案2

正如另一个答案所说,Windows将要如果您尝试调用一个与其自身名称不同的服务器,则会发出抱怨;netdom可以修复该问题。

但在域环境中,还需要考虑 Kerberos。为了使身份验证成功,服务器需要具有与您调用它的名称相匹配的服务主体名称。

因此您还需要为服务器注册一个额外的 SPN:

setspn -S CIFS/Alias Servername

(其中“Alias”是新名称,“Servername”是服务器的实际主机名)

相关内容