无法通过名称 ping 两个服务器中的其中一个,但可以通过 IP ping 两个

无法通过名称 ping 两个服务器中的其中一个,但可以通过 IP ping 两个

我有两个数据库服务器,我可以通过 IP 对两个服务器进行 ping 操作,但只能通过名称对其中一个服务器进行 ping 操作。

设置:

  • 服务器1-原始数据
  • Server2-通过复制从 Server1 接收数据

Server1 可以通过 IP 和 NAME ping Server2。Server2
可以通过 IP ping Server1,但不能通过 NAME ping 通。

为什么 server2 无法通过名称 ping server1?

我需要它,因为当我输入数据库服务器的名称时,他无法识别。

答案1

您遇到了名称解析问题。根据您的暗示,我假设这是 DNS 问题。以下是一些可采取的步骤:

  1. 确定您的内部 DNS 服务器。确定 DNS 服务器上的相应 DNS 区域。验证 DNS 区域是否配置为允许动态更新。如果这是 AD 相关区域,则您只能允许安全更新。如果这不是 AD 相关区域,则您需要同时允许安全和不安全更新。

  2. 确保两个数据库服务器都配置为使用步骤 1 中确定的 DNS 服务器进行 DNS 名称解析。

  3. 确保两个数据库服务器都配置了与您的 DNS 区域匹配的 DNS 后缀。如果这是 AD 域并且两个数据库服务器都已加入该域,则会出现这种情况。

  4. 验证两个数据库服务器的 DNS 区域中是否注册了正确的 A(主机)记录。如果未注册或不正确,则删除不正确的记录,并通过从命令提示符运行 ipconfig/registerdns 从适用的服务器重新注册。

答案2

这里有很多选择。但我首先要从这里开始:

  • nslookup server1 返回什么?如果它不是您要查找的 IP 或返回空,那么这就是您的问题
  • 那 tracrt server1 怎么样?它可能会在某个时候停止,这会指出问题所在。
  • 既然我们在谈论数据库,您是否尝试过从服务器 2 远程登录到服务器 1 上运行 SQL Server 的端口?这才是最终最重要的(其余的您可以绕过)。

答案3

尝试刷新 DNS 解析器缓存。如果在 Windows 上 - 从 server2 开始 - 运行 - ipconfig /flushdns。

答案4

最佳做法是将每台服务器的 IP 和主机名添加到两台服务器的主办方文件。

例如,如果您的服务器运行 Windows,则使用记事本打开 C:\Windows\System32\drivers\etc\hosts 并添加:

192.168.1.101     dbserver1.domain.com
192.168.1.102     dbserver2.domain.com

到两个服务器(当然,您将在主机文件中添加您的 IP 和主机名)。

相关内容