2014年12月1日星期一

不懂代码也会写HOST!(三)如何查找某个域名的可用IP

文章开始之前,说一个事:如果在文章中有某个方法我没讲到,那么可能是两个原因。一是这个方法众所周知,二是这个方法对于初级用户难度太高。如果你愿意分享,可以自己写一篇文章。就这样。

  • 通过域名查找IP
上两篇文章我们讲解了如何找到被封锁的域名,那么现在就得从域名中找出可用的IP地址,然后再写入Hosts表中。
一般来说,查找域名对应IP最简单的方法就是ping命令,可惜我们这么做似乎行不通……那么,就让别的地区来ping吧!以下提供若干网站:
https://cloudmonitor.ca.com/zh_cn/ping.php (默认IPv6,如果需要IPv4可以试试下面这个。)
https://cloudmonitor.ca.com/zh_cn/traceroute.php
http://www.webkaka.com/Ping.aspx
http://www.17ce.com/
http://www.super-ping.com/sc.html ( 无法加密,使用时可能因为关键字被Reset,因此建议先翻墙后使用。)
这类网站有很多很多很多,总之你能够通过越多的地区ping出一个被封锁域名的IP,那么最终成功率就越高。
那么我现在以 http://www.super-ping.com/sc.html 来做个示范(注意翻墙过去ping,否则可能会被关键字Reset),比如这里我们 ping google.com :
哇 ping 出来了好多IP,那么哪个是能用的呢?有人说我有专门的工具,有人说在本地ping一下就可以了。但如果我告诉你一个更简单的办法呢?
比如我们这里选了一个IP地址74.125.230.64,那么我们先让电脑回到墙内,再新开一个Chrome窗口,在地址栏输入:https://74.125.230.64/:
好吧,这个IP不能用,我们换一个https://173.194.41.41/:
证书错误页面的出现,说明这个IP地址能用,把它记录下来吧。
这个方法比起单纯ping来说最大的优势就是可以忽略针对端口的封锁(仅检测443端口),因此比单纯ping来验证IP可用性更靠谱。
  • 筛选最优IP地址
收集到了很多可用IP后,我会尝试从中选择一个速度较快的。一般来说大家在筛选速度更快的IP地址时使用的是ping,然后对比多个IP之间的延迟。但这不够,除了延迟,我们还应该更看看带宽。延迟和带宽两个指标结合才能判断一个IP是否健康。
打开这个网站(其它类似网站请自己发掘):http://www.webkaka.com/webCheck.aspx ,然后在网址栏中填入要测速的IP。这里仍然用刚才找到的一个 google.com 的IP 173.194.41.41 ,但请注意格式:https://173.194.41.41/ 。
从图中可以看到这是一个很健康的IP。
我们可以关注以下栏目:
“状态”栏:有多少区域无法访问,但实际上可能并不是无法访问而是单纯的测速提供商故障了。如果无法访问的区域太多,那么就可能因为这属于随机封锁/局部封锁而需要考虑弃用这个IP。
“内容下载速度(KB/s)”栏:各个地区的下载速度,可以了解联通更快还是电信更快之类。
图表“下载速率”:可以看到并计算下载速度分布和平均指标,多个IP地址间比较速度也多使用这个指标
其它指标请自己发掘。
  • 所有可用IP都被封锁了!
当你手头所有工具都ping不出可用IP的时候,我们就得想办法找出其它IP了,这个时候运气成分比较重要。鉴我们不应该盲目地去寻找,也不应该随便就使用其它类似域名的IP地址。鉴于证书和服务器内容问题,这可能并不会让你更轻松,有的时候反而会增加后期维护的难度。比如之前有一个IP地址用于Gmail时,测试初期一切正常,但实际使用时才发现无法打开Gmail联系人,这就是一个典型的服务器内容问题,但当你遇到问题的时候,往往很难判断是哪里出故障了。
对于谷歌来说,当你看到 74.125.230.64 的时候,我们就应该会想到 74.125.231.64 是不是能用,那么 74.125.232.64 呢?然后你可以拿你联想到的IP挨个用以上方式测试。不过哪怕是测试通过,我们也应该谨慎使用这类IP,因为毕竟不是ping出来的,这样使用并不是被网站官方所希望的,很可能会出现严重后果,所以一定要严格测试。以下将官方ping出来的IP称为“官方IP”,其它IP为“非官方IP”。
我们可以轻松做到的测试方式:
1,对比官方和非官方IP的证书,方式在《不懂代码也会写HOST!(一)利用CHROME找出被屏蔽的网站域名》一文末尾有提到。若是证书完全相同,那么很大可能服务器内容也是相同的。另外,通过这种查看证书的方式,还可以看到该IP承载了哪些域名。
2,对于很多网站,包括但不限于谷歌、脸书、推特,IP越相似,那么服务器内容越可能相同,例如74.125.230.64、74.125.231.64、74.125.232.64等。
3,最保险的方法:把你的非官方IP部署进测试环境的Hosts,然后做尽可能多的测试。确认无误后,再部署进生产环境。
原始地址:http://wp.me/p3p7E3-JH BY 看海的狐狸

没有评论:

发表评论