5分钟前,我的服务器无法find路由到api.twitter.com。 mtr显示一个空白的屏幕。 /etc/init.d/networking restart解决了这个问题,但我想知道出了什么问题,以便下次更精确地排除故障。 有任何想法吗 ?
更新 :这是什么主机命令shows :
host api.twitter.com api.twitter.com has address 199.16.156.199 api.twitter.com has address 199.16.156.40 api.twitter.com has address 199.16.156.104
在刷新caching之后,一条路线改变:
host api.twitter.com api.twitter.com has address 199.16.156.40 api.twitter.com has address 199.16.156.104 api.twitter.com has address 199.16.156.231
正如你可以看到api.twitter.com有多个Alogging
# host api.twitter.com 216.187.125.130 Using domain server: Name: 216.187.125.130 Address: 216.187.125.130#53 Aliases: api.twitter.com has address 199.59.150.9 api.twitter.com has address 199.59.149.199 api.twitter.com has address 199.59.149.232 # host api.twitter.com 8.8.8.8 Using domain server: Name: 8.8.8.8 Address: 8.8.8.8#53 Aliases: api.twitter.com has address 199.16.156.199 api.twitter.com has address 199.16.156.72 api.twitter.com has address 199.16.156.231
所以“群集”的一个节点有可能失败,所有的数据包都试图到达失败的节点。 正如你可以看到每条路线都有TTL
# ip ro get 199.59.150.9 199.59.150.9 via 209.15.xxx.xxx dev em1 src 209.15.xxx.xxx cache mtu 1500 advmss 1460 hoplimit 64 # ip -s route show cache 199.16.156.231 199.59.150.9 via 209.15.xxx.xxx dev em1 src 192.168.207.10 cache users 1 used 38 age 17sec ipid 0x7f34 mtu 1500 advmss 1460 hoplimit 64 199.59.150.9 from 209.15.xxx.xxx via 209.15.xxx.xxx dev em1 cache users 1 age 20sec mtu 1500 advmss 1460 hoplimit 64
我认为你可以使用下面的命令清理caching
# ip route flush cache 199.59.150.9
您可以在http://vincent.bernat.im/en/blog/2011-ipv4-route-cache-linux.html获取更多信息。