Linux服务器故障排查指南4:我能路由至远程主机吗?

日期: 2013-03-26 来源:TechTarget中国

  我能路由至远程主机吗?

  在排除了DNS问题并看到web1被正确解析为IP 10.1.2.5之后,大家需要测试自己能否路由至远程主机。假如我们的网络启用了ICMP,那么最快捷的测试办法是ping web1。如果该主机能被ping通,我们就知道数据包已经被路由至目的地,这样的话可以直接跳转至”远程端口打开了吗?”章节。如果无法ping通web1,则尝试与网络中的另一台主机通信看看能否ping通。如果我们无法在远程网络中ping通任何主机,就说明数据包无法被正确路由。最好的路由问题测试工具这一就是traceroute。一旦与一台主机建立起路由追踪,它会测试我们与主机之间的每一次数据包跳转。举例来说,dev1与web1之间的一次成功路由追踪流程将如下所示:

  $ traceroute 10.1.2.5
  traceroute to 10.1.2.5 (10.1.2.5), 30 hops max, 40 byte packets
  1 10.1.1.1 (10.1.1.1) 5.432 ms 5.206 ms 5.472 ms
  2 web1 (10.1.2.5) 8.039 ms 8.348 ms 8.643 ms

  这里我们会看到数据包从dev1到达其网关(10.1.1.1),然后再跳转至web1。这代表着起始位置与目标主机可能都采用10.1.1.1网关。如果大家的操作环境中存在更多路由中转点,那么显示的结果可能与上述内容有所不同。如果无法ping通web1,那么输入结果将如下所示:

  $ traceroute 10.1.2.5
  traceroute to 10.1.2.5 (10.1.2.5), 30 hops max, 40 byte packets
  1 10.1.1.1 (10.1.1.1) 5.432 ms 5.206 ms 5.472 ms
  2 * * *
  3 * * *

  一旦我们在输出结果中看到星号,就说明问题出在网关方面。大家需要从路由器着手,看看为什么它无法在两套网络之间路由数据包。通过追踪,大家会看到如下内容:

  $ traceroute 10.1.2.5
  traceroute to 10.1.2.5 (10.1.2.5), 30 hops max, 40 byte packets
  1 10.1.1.1 (10.1.1.1) 5.432 ms 5.206 ms 5.472 ms
  1 10.1.1.1 (10.1.1.1) 3006.477 ms !H 3006.779 ms !H 3007.072 ms

  在这种情况下,我们发现ping操作在网关环节出现了超时,这说明该主机可能已经崩溃或无法通过同一子网进行访问。有鉴于此,如果大家还没有从同一子网下的其它设备访问过web1,请尝试ping及其它测试。

  注意:如果某套烦人的网络仍然在阻断ICMP,不用担心,我们仍然有办法进行路由排查工作。大家只需要安装tcptraceroute软件包(sudo apt-get install tcptraceroute)然后运行相同的路由追踪命令,惟一的区别是用tcptraceroute来代替traceroute 。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐