创建本地 DNS 记录

创建本地 DNS 记录

我创建了一个新的虚拟机,并能够使用其 IP 地址对其进行 ping 操作。但是,我无法通过名称对其进行 ping 操作 - 即使它与我的其他 Windows 机器属于同一个“工作组”。以下命令的结果使这变得特别奇怪:

C:\>ping -a 192.168.0.20

Pinging WIN-AOHA8MSD3D0 [192.168.0.20] with 32 bytes of data:
Reply from 192.168.0.20: bytes=32 time<1ms TTL=128
...

因此可以查询机器名称,如上所示,但是当我使用该名称转身时它失败了:

C:\>ping WIN-AOHA8MSD3D0
Ping request could not find host WIN-AOHA8MSD3D0. Please check the name and try
again.

如果相关的话,虚拟机位于使用桥接网络适配器的 VMWare Workstation 7.1 中。客户操作系统是 Windows 2008 R2 SP1。主机是 Windows 7 x64。最初对 IP 地址的 ping 也不起作用,但我在客户操作系统上创建了允许回显请求的 ICMP 规则。

要使机器名称“可 ping 通”,需要做些什么?

答案1

在主机上,确保网络发现已启用。

在客户机上(如果需要,也包括主机上),配置防火墙以允许以下协议:

  • 法律硕士:UDP 到端口 5355

    由 Windows Vista、7 和 2008 使用。使用多播。

  • 网络基本输入输出系统:UDP 到端口 137为了名称服务

    可选的 UDP/138 用于 NetBIOS 数据报,以便浏览正常工作。名称解析不需要。

    所有 Windows 版本均使用,OS/2 和 MS-DOS 的 LAN Manager 也不支持。使用广播,不支持 IPv6。我的建议是不是如果 LLMNR 有效,则启用此功能。另一方面,NBNS 仍然比手动编辑 /etc/hosts 更好,并且受到许多操作系统的支持(包括通过 Samba 的 Linux)。

  • 苹果移动DNS不是 Windows 的一部分,但仍然相当常见且可用于 Windows(你好)和 Linux(阿瓦希),也是此列表中唯一正式开放的协议。如果您决定安装它,请打开 UDP 端口 5353。

如果名称解析仍然失败,请使用Wireshark监控网络流量。

答案2

最简单的解决方案是向 C:/Windows/System32/drivers/etc/HOSTS 文件添加一个条目。此文件通常标记为“只读”,因此在使用纯文本编辑器(如 Windows 记事本)编辑它之前,您需要暂时删除只读属性(完成编辑后,不要忘记再次将其标记为只读)。

添加到文件中的行将如下所示:

  • 192.168.0.20 WIN-AOHA8MSD3D0

您可以将其添加到文件中的任何行(靠近顶部、末尾,无论您喜欢什么位置)。

如果您正在运行 DNS 服务器(例如 ISC-Bind,它也适用于 Windows),那么您将需要编辑适当的 DNS 区域文件(一个用于域/主机名,另一个用于反向查找,它是“IN-ADDR.ARPA.”区域的下属)。

相关内容