在使用服务器的 NetBIOS 名称 ping 服务器时,返回的 IP 地址不正确

本文提供了在使用服务器的 NetBIOS 名称 ping 服务器时返回错误 IP 地址的问题的解决方法。

适用于:  Windows Server 2012R2
原始 KB 编号:   981953

症状

您拥有一台运行 Windows Server 2008 或 Windows Server 2008 R2 的计算机。 当具有多个 IP 地址的服务器尝试使用其 NetBIOS 名称自行 ping 时,将返回不正确的 IP 地址。

原因

使用名称而不是 IP 地址执行 ping 操作时,该名称必须解析为 IP 地址。 如果名称是服务器的名称,则 IP 地址作为地址从网络适配器返回,该地址位于网络绑定顺序的顶部或底部。 它通常是最后安装的网络适配器,并且可能不是您期望使用的接口。 因此,ping 命令返回不正确的 IP 地址。

备注

当网络适配器上有多个地址时,首选 IPv6 地址。

解决方案

若要解决此问题,可以通过将首选适配器移动到绑定顺序的顶部或底部来更改选择 IP 地址的适配器。 对于未显示在列表中的隐藏适配器,您可以创建使用服务器名称和预期 IP 地址的主机文件。 隐藏的适配器的一个示例是 Microsoft 故障转移群集虚拟适配器。

如何更改绑定顺序

若要更改绑定顺序,请按照以下步骤操作:

  1. 单击 "开始  ""开始"按钮,然后单击"控制面板"。

  2. 单击 "网络和 Internet", 然后单击"网络和共享中心"。

  3. 根据操作系统更改网络适配器设置:

    • 对于 Windows Server 2008,请单击"管理适配器设置"。

    • 对于 Windows Server 2008 R2,请单击"更改适配器设置"。

  4. 单击 "组织", 指向"布局",然后单击"菜单栏"。

  5. 在"高级 " 菜单上,单击"高级设置"。

  6. "连接 "窗口中,选择您需要的网络适配器。

  7. 将此网络适配器移动到列表顶部或列表底部。 可以通过使用向上箭头和向下箭头按钮来完成操作。

  8. 单击“确定”。

如何更改主机文件

对于隐藏的适配器,你无法使用"如何更改绑定顺序"部分中的步骤更改绑定顺序。 对于隐藏的适配器,您必须向使用预期主机名和 IP 地址的主机文件添加条目。

若要更改主机文件,请按照以下步骤操作:

  1. 单击 "开始  ""开始"按钮,然后单击"所有程序"。

  2. 单击 **"附件",**右键 记事本",然后单击"以 管理员角色运行"。

  3. UAC 如果系统提示你输入管理员密码或进行确认,请键入 密码或提供确认。

  4. 在命令提示符下,键入以下命令,然后按 Enter:

    cd %windir%\System32\Drivers\Etc  
    
  5. 在命令提示符下,键入记事本主机,然后按 Enter。

  6. 在步骤 5 中打开的文件底部,使用下列格式为预期 IP 地址添加新 条目:IP_Address****主机名
    例如,对于 Server01 的 IP 地址为 10.0.0.1,请键入:
    10.0.0.1Server01

  7. 在"文件" 菜单上,单击 "保存",然后关闭记事本。

  8. 在命令提示符下,键入 ipconfig /flushdns,然后按 Enter。 它将重新加载主机文件,而无需重新启动计算机或服务器。

备注

如果要 Ping 网络适配器的特定 IPv4 地址,可以使用 -4 参数。 例如,可以使用以下命令:
ping -4 <host name>

如果要通过网络使用 IPv4 地址,可以强制Windows IPv4 地址而不是 IPv6 地址。 但是,建议不要这样做。 强烈建议将网络更新为使用 IPv6 地址。 若要详细了解如何禁用 IPv6,请单击以下文章编号以查看 Microsoft 知识库中的文章:

929852如何在 Windows Vista、Windows 7 和 Windows Server 2008 中禁用某些 Internet 协议版本 6 (IPv6) 组件

更多信息

有关 getaddrinfo 函数详细信息,请访问以下 MSDN 网站:
getaddrinfo 函数