无法通过名称ping一台服务器,但可以通过IP ping两台服务器

我有两个数据库服务器,我可以ping通两个IP,但只能ping一个名字。

设置:

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

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

为什么server2不能通过名字来ping server1?

我需要它,因为当我键入数据库服务器的名称,他不认识。

你有一个名称parsing问题。 基于你暗示的我假设这是一个DNS问题。 以下是一些步骤:

  1. 确定您的内部DNS服务器。 在DNS服务器上标识适当的DNS区域。 validationDNS区域configuration为允许dynamic更新。 如果这是与AD相关的区域,则只能进行安全更新。 如果这不是一个AD相关的区域,那么你需要同时允许安全和不安全的更新。

  2. 确保两个数据库服务器都configuration为使用步骤1中标识的DNS服务器进行DNS名称parsing。

  3. 确保两个数据库服务器都configuration了与DNS区域匹配的DNS后缀。 如果这是一个AD域,并且两个数据库服务器都连接到域,则将会是这种情况。

  4. validation两个数据库服务器的DNS区域中是否注册了正确的A(主机)logging。 如果它们未被注册或者它们不正确,那么通过从命令提示符运行ipconfig / registerdns来删除不正确的logging并从相应的服务器重新注册它。

这里有很多select。 但是,这是我开始的地方:

  • nslookup server1返回什么? 如果这不是您要查找的IP或返回空白,那就是您的问题
  • tracrt server1呢? 它可能在某个时候停下来,这会指向问题出现的方向。
  • 因为我们正在谈论数据库,你是否尝试telnet服务器2上的服务器1上运行的SQL Server端口? 这些都是最重要的(剩下的事情可以解决)。

尝试冲洗DNSparsing器caching。 如果在Windows上 – 从服务器2开始 – 运行 – ipconfig / flushdns。

这听起来像一个名称parsing问题。 两台机器是否都使用相同的DNS服务器,并且所有的名称都正确注册?

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

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

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

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