通过域名追踪网站的机房地址

那天看到有人问“知道域名,能不能知道那个网站所在的机房?”我后来想了想也不是完全没办法吧,于是拿自己的网站做了做实验。

leiling.org 目前的公用IP的物理地址是“衡天网络科技(香港)有限公司”,咱人穷就这么一台服务器,直接PING完之后去查一下就OK。我想如果追踪一下这个IP地址,会不会从经过的路由节点中查到一些蛛丝马迹呢?

用Win命令行的tracert指令(Linux下为tracepath)追踪从我家到服务器之间的线路,而后一点一点分析:

PS C:\Users\雷灵> tracert leiling.org

通过最多 30 个跃点跟踪
到 leiling.org [103.251.89.81] 的路由:

1 1 ms 1 ms 1 ms 192.168.1.1
2 14 ms 51 ms 58 ms 119.109.144.1
3 8 ms 10 ms 7 ms 218.61.43.157
4 34 ms 31 ms 31 ms 113.230.184.57
5 67 ms 69 ms 70 ms 219.158.99.233
6 65 ms 66 ms 66 ms 219.158.11.154
7 74 ms 72 ms 69 ms 219.158.97.10
8 73 ms 72 ms 74 ms 219.158.102.166
9 95 ms 73 ms 74 ms 219.158.33.118
10 72 ms 73 ms 73 ms 61.8.40.150
11 74 ms 73 ms 73 ms te3-1.core3.hk01.hkngn.com [123.242.225.2]
12 71 ms 71 ms 72 ms 103.251.89.81

跟踪完成。

第一条是我家路由的网关–>我们地级市的线路–>省干线–>帝都的全国干线–>香港的干线–>

之后那条就比较重要了 123.242.225.2,在站长工具查了一下,是香港新力讯的机房,然后才是署名衡天的服务器,果然查到了吧。

我又随便找了一个网站,比如这个 www.fyfz.cn,在站长工具查到这个网站(其中一个)的IP是 222.186.46.46 一个江苏省镇江市的IP,trace一下它

PS C:\Users\雷灵> tracert 222.186.46.46

通过最多 30 个跃点跟踪到 222.186.46.46 的路由

1 2 ms 1 ms 1 ms 192.168.1.1
2 9 ms 9 ms 10 ms 119.109.144.1
3 10 ms 8 ms 8 ms 218.61.43.157
4 34 ms 35 ms 35 ms 113.230.186.165
5 31 ms 30 ms 31 ms 219.158.105.73
6 60 ms 61 ms 64 ms 219.158.13.174
7 59 ms 75 ms 60 ms 219.158.106.118
8 * * * 请求超时。
9 65 ms 62 ms 63 ms 202.97.89.69
10 * * * 请求超时。
11 59 ms 60 ms 59 ms 58.217.20.206
12 66 ms 67 ms 62 ms 222.186.4.18
13 * * * 请求超时。
14 * * * 请求超时。
15 69 ms 67 ms 67 ms 222.186.46.46

跟踪完成。

我们运气比较好,从其中的一个IP查到是“江苏省镇江市 电信IDC机房”

虽然这方法并不是每次都奏效,譬如经常会遇到各种菊花请求超时,大概是我们经过了电信或联通加密的线路,可以尝试多试几次。

另外,如果你真的尝试一下会发现,其实我们并没有办法确定我们trace到的地址就是对方真实的IP地址,譬如上面那网站,在全国各地都有节点加速(可以用站长PING工具,如果有加速节点,不同地区会PING出来不同的加速节点IP)有可能我们追踪到的只是人家的一个节点也说不定呢?所以这种方法更适合用于一些小站。

也就小站网站主有这闲心吧

至于本文的现实意义嘛——总会有无良的主机商给你做出各种各样承诺的,这些承诺是真是假无从得知,像我们这种小网站主都是从乡下来的,没见过世面,如果从他们嘴里问不出实话的话,那我们也只好自己动手了。

当然,我的主机商还是非常好的。