如何识别和解决连接超时的根本原因?

背景:我试图连接到SFTP服务器来传输一些文件。 但是,我注意到,我不能从一个特定的服务器连接。 我能够从同一networking上的其他机器连接,所以我可以说,这可能是本地服务器的错误。

SERVER-OK#1 ---> sftpserver.com:22 SERVER-FAIL#2 ---> sftpserver.com:22 

我到目前为止所尝试/发现的:

  1. traceroute – 有不同的跟踪结果。 失败的服务器,不完成跟踪。

     traceroute to sftpserver.com (10.10.10.10), 30 hops max, 60 byte packets 1 10.10.10.1 (10.10.10.254) 0.681 ms 1.209 ms 1.435 ms 2 99.99.99.99 (99.99.99.254) 1.890 ms 1.820 ms 1.741 ms 3 * * * 4 * * * 30 * * * 
  2. ping – 仅从SERVER-FAIL#2超时sftpserver.com。 我可以ping谷歌等,但不是sftserver.com。 如果从其他服务器完成,ping是好的。

  3. iptables – 禁用。
  4. proxieshttp_proxybash_profile设置。
  5. firewall – 允许端口22 SSH。
  6. reboot server – 我知道,对吧? 我有点绝望

还有什么我应该检查?

如果你知道它可以从其他服务器上运行,那么你只需要确定两台不起作用的服务器之间的关系有什么不同。 由于您的跟踪超时并且ping失败,所以这些主机之间存在基本的连接问题。 比较有故障的服务器和已知的好主机之间的设置。 尤其是:

  • 网关是否已设置,并且是否与子网上的其他主机相匹配?
  • networking地址和子网掩码是否正确?
  • 问题主机可以访问networking上的任何/所有其他主机吗?
  • 那个不好的跟踪路由是否和其他主机的成功路由一样?

举个例子,一个子网掩码稍微偏离了你,几乎所有其他的主机都可以正常访问,但是由于你的主机不认为它在同一个本地networking上,因此使得一个特定的子集“隐形”。 route -n命令应该显示基本网关,networking和子网信息。