Loading...

变态的智能DNS实现方法

Filed under: PHP,网站技术,虚拟主机 — 江东 @ 2011-02-19 21:28:56 才(17)条评论

在没事的时候,我总会想一些变态的方案来解决我的需求,刚才楼下散步的时候,又想了一个变态的智能DNS方案。

首先说需求背景:在将来的某一天,我会推出一个另外一个廉价但是靠谱的互联网服务,这个服务有个特点,就是需要大约10个或者更多位于全球的服务器来分发内容,服务器多了,就难免有某个服务器宕掉而无法检测到。

需求出来了:要求一旦有服务器宕,该服务器对应域名的IP就自动解析到其他任何一个可用的服务器的IP上,这样就保证分发服务器能达到100%的可用率。

可能这个时候有朋友就会跳出来说,用那种可以检测宕机的智能DNS啊,是的,解决方案就这么简单。不过既然我这篇日志提到的是变态的解决方案,肯定讲的不是常规的智能宕机检测DNS。

我的实现方式是这样的,假设需要检测的服务器有10台,那么我就在这10台服务器上分别配置服务器检测脚本,这个脚本的功能如下:

  1. 每几分钟检测其他几台服务器的web server的状态,10台一起行动,每台服务器被检测的时间间隔就很短,可能一分钟就能被检测一次;
  2. 一旦发现某台服务器宕机,利用enom的DNS API,自动将宕机服务器的域名如:server001.homezz.com 随机解析到其他未宕机的服务器;
  3. 于是乎,山寨的智能DNS就实现鸟;

脚本可以用shell,也可以用perl,甚至还能用php,实现起来相当简单。

欢迎专家在下面拍砖!

其实,熟悉我的人都知道,我很多解决方案都是自己想出来的,好的是,有些方法居然和大家通用的方案竟然一致,懒人就这样,不愿意接受传统东西,没办法!

周末加班部署完毕openvpn

Filed under: 互联网事 — 江东 @ 2011-02-19 17:49:08 才(3)条评论

这几天一直在忙着搞openvpn的自动配置脚本,这个自动配置脚本是和blockcn关联的,一旦运行之后,服务器就自动安装好openvpn,同时和blockcn的内部API通信,将相关的配置文件传输到blockcn,因为有内部的数据,所以目前不能分享,好了,现在blockcn的服务器基本都支持openvpn了。

下面我将介绍在window下如何连接blockcn的openvpn(read on …)

有些问题其实可以用常识来解决的

Filed under: 互联网事 — 江东 @ 2011-02-19 15:28:57 才(4)条评论

很多的人,包括我自己某些时候,在遇到问题之后,第一时间想到的不是做排查,而是马上将问题归结到对方,其实很多问题,用常识就可以解决的,下面我来举几个例子。

手机VPN掉线的问题

有朋友问,为啥你的vpn在手上一直掉线呢?

这个问题首先直接将问题的原因归咎到了对方,从字面上讲,就是vpn的问题了。于是在收到这个质疑之后,我马上去看我的几个vpn,多数情况,都是好的,而且看运行日志,在近几个小时都没有中断,并且我的vpn都有脚本自动监控,2分钟一次,一旦pptp服务出问题,就会自动重启,同时记录日志。

在我检查确认不是vpn的问题之后,我就再次询问对方的网络和使用的设备。得到的答案是对方使用的是手机,有的是EDGE网络,有的是3G网络,有的是WI-FI。

首先,从设备上说,手机是属于受限设备,至少从电源上说 就是受限设备,那么在现在的电池技术下,手机不得不设计成待机最小耗电模式,所以如果您的手机有一段时间不用,手机会自动关闭WIFI,移动蜂窝网络的数据通道或者GPS这些耗电的应用,这个时候,您手机就不会有网络了,除非手机还运行着定期获取网络数据的程序,鉴于此VPN自然就会断掉。 (read on …)

预告 blockcn将支持openvpn

Filed under: 互联网事 — 江东 @ 2011-02-18 22:59:05