用DNSPod和Squid打造自己的CDN(二)

第 3 章 设置域名的DNS

重头戏开始前,我们先来热身。
智能DNS可以说是CDN的基础。相信平时大家做网站都会有下面的情况:首页上放两个链接,电信用户请访问主力站点A,网通用户请访问镜像站点B。然后做两个域名,www.naizhao.com指向A,cnc.naizhao.com指向B。用户看了半天觉得头晕,随便点一个进去,发现访问速度真可以的,估计整个网页打开,中国都已经步入共产主义社会了。
有了智能DNS后,上面的问题迎刃而解。用户只需要输入www.naizhao.com,系统就会自动判断用户是电信线路还是网通线路上网,然后自动返回电信或者网通的服务器IP。整个过程对于用户来说是不可见的,用户只会觉得刷的一下网页就打开了,那叫一个爽。
废话不多说,let's do it!

1.在DNSPod上面添加域名
打开www.dnspod.com,在右上角的导航菜单选择注册,根据提示输入信息完成注册。注册成功后返回首页登录。
登录后,看到有个添加新域名的框,输入naizhao(别输www。另外本文的例子就是naizhao.com),然后右边选择.com,完成后点击增加。

添加后,系统会自动跳到新添加的域名管理页面。可以看到里面什么东西都没有。不急,我们慢慢来。
在页面下方可以看到几个输入框和下拉列表,用于新增解析记录。我们先试着添加一条电信的记录看看。按照下面的格式输入:
主机记录:www
记录类型:A
线路类型:电信
记录值:1.1.1.1
优先级:(留空)
TTL:3600(默认)
完成后,点击增加。

有几个地方给大家说明一下:
主机记录:也就是域名前面的东西,比如www,那么记录生效后就是www.naizhao.com。如果要实现naizhao.com(前面没有www),那么添加的时候留空就好,系统会自动给加上一个@,代表域名本身。
记录类型:有A、CNAME、MX三种。最常用的就是A,记录值是一个IP地址。另外是MX,也就是邮件记录,做邮件服务器的时候用到,这里不深入讨论了。
线路类型:比较重要。如果选择了电信,那么代表这条记录*只能*给电信用户解析出来,网通用户是解析不出这条记录的。如果你一个域名只添加了一个电信的记录,那么网通用户将会无法访问。同样道理,网通的线路类型也一样。另外有一点要说明:非网通、非教育网的用户将会被解析到电信记录去。也就是说,国外用户、铁通、联通等用户都会被解析到电信服务器。
还有一个通用,通用的意思是,不管你是电信还是网通还是其他用户,都可以解析出这条记录。在存在电信和网通两条记录的情况下,不建议添加通用记录。
记录值:根据记录类型,分别输入一个IP或者一个域名(不是URL转发的域名)
优先级:用在MX记录中,数字越小,优先级越高。作用是:从优先级最大的服务器开始,如果邮件服务器出问题,邮件无法寄达,将会转发到优先级小一级的服务器上去。如果你没有很多台邮件服务器,这个就不用管了。
TTL:同样是比较重要的东西。数字是按照秒来算,3600也就是一个小时。意思是,用户请求一个域名的解析,在得到IP后,3600秒之内不会向DNS服务器重新请求解析,3600秒之内访问此域名,都将直接从自己机器的缓存里面获取IP。超出3600秒后,将会重新向DNS服务器请求获取IP。

OK,我们继续,添加一条网通的记录,让添加完成后的记录像下面的样子

到此,我们就添加成功了。等个半分钟,我们来测试一下是否已经生效。
A.Windows用户
我们使用nslookup命令,先在开始菜单-运行-cmd,回车打开命令行。
然后输入nslookup www.naizhao.com ns1.dnspod.net,稍等一下,看看服务器返回的结果:
Name:    www.naizhao.com

Address:  1.1.1.1
如果你是网通用户,那么会得到下面的结果
Name:    www.naizhao.com

Address:  2.2.2.2
只要你按照说明的步骤来说,基本不会有问题出现。如果无法正常返回结果,请稍等两分钟。如果等了两分钟还不行,那么就检查下你添加的记录是否正确了。
B.Linux/Unix/Mac用户
直接使用系统自带的dig命令。dig命令比nslookup更为强大。
输入dig @ns1.dnspod.net www.naizhao.com,会返回一大堆结果。我们只需要找到下面的文字就证明一切正常
;; ANSWER SECTION:
www.naizhao.com.        3600    IN      A       1.1.1.1
网通用户会看到
;; ANSWER SECTION:
www.naizhao.com.        3600    IN      A       2.2.2.2

至此,DNSPod方面的工作已经完成,下一步就是把域名的DNS服务器改为DNSPod的。
2.把域名的DNS转到DNSPod
域名迁移以前,我先提示一下风险:

根据域名的DNS协议规定,所有域名的NS记录(也就是指向DNS服务器的记录)的TTL时间必须为172800秒,也就是48小时。根据我们前面所学到有关TTL的知识,也就是说,一个域名如果被请求过一次以后,只要缓存不被清空,那么NS记录就会存在48小时。48小时内,任何有关此域名的记录的请求都发送到这个DNS服务器。换个角度来理解,如果A用户访问过你的网站,然后你在半个小时后修改你域名的DNS服务器,那么在剩余的47个半小时内,A用户对你这个域名的所有请求都会发送到你*旧的*DNS服务器,而不是新的服务器。B用户在你修改DNS成功后访问你的网站,那么B用户将会得到*新的*DNS服务器地址,所有请求都发往*新的*DNS服务器,而不是*旧的*。明白这点后,那么你就会知道,为什么修改域名的DNS后需要48个小时来生效。你也会明白,为什么记录会一下变成新的,一下变成旧的:这是因为,你地方的DNS服务器一般是2-3台,但他们每台之间的记录并不同步。
另外,一些很小气的域名注册商,在你修改DNS服务器后,会停止对你域名的解析。那么你将会冒着用户无法访问你站点的风险。对这样的用户,我一般建议在迁移域名的前一天,在你域名注册商的DNS管理后台,先把你所有域名记录的TTL,从默认的3600改为36000(10个小时)以上,并且选择在晚上10点以后修改DNS,因为DNS记录会在用户关机、关闭ADSL MODEM后失效(当然,很有可能还会从地方电信的DNS得到旧记录)。设置10个小时以上是让用户在就算旧DNS服务器停止服务后,也能从本地的缓存里面得到记录。

具体如何修改DNS,我就不具体说了,每个域名注册商都不一样。有几点要注意的:
1.填写DNS的时候,记得要把旧的全部去掉,不要以为新旧留着会稳定,这样只会让你的用户得到错误的记录。
2.尽量多填DNS服务器,这样能让你的域名更加稳定。目前DNSPod有6台DNS服务器,一般的域名注册商允许你填写4个(新网),万网在客户面板里面只能填写2个,但在域名管理面板(diy.hichina.com)可以把6个都填写进去。

目前DNSPod的6台DNS服务器分别为(注意了,是.net不是.com):
ns1.dnspod.net
ns2.dnspod.net
ns3.dnspod.net
ns4.dnspod.net
ns5.dnspod.net
ns6.dnspod.net

折腾了老半天,大家也够累了。这个时候,ISO应该下载好了吧?辛苦一点,先把盘给刻好了。在下一章奶罩将会带你进入神秘的Linux殿堂。

(0)

相关推荐

  • 用DNSPod和Squid打造自己的CDN全程分享

    本教程面对的对象是个人站长,所以各方面会力求傻瓜化,让大家都能看懂.当然,前提是需要你要有一颗好学的心,还有坚韧的毅力.另外一方面,本篇文章基本不会涉及到Windows的内容,整套系统将会是架构在CentOS Linux 5上.别问我为什么不是Windows,因为Windows只能拿一个字形容:烂.不喜欢Linux,或者认为Linux学习起来有困难的朋友,可以到此打住.可能有人要问,为什么是Linux,而不是FreeBSD?因为FreeBSD不管从系统的优化配置,还是文件系统的性能,都不合适初学

  • 用DNSPod和Squid打造自己的CDN (八) 测试并运行SQUID

    第 8 章 测试并运行SQUID 1.前期准备 想要测试SQUID是否正常,必须要先把www.naizhao.com这个域名解析到2.2.2.2这个IP上.跟上一章一样,如果你是网通用户就不需要做任何操作,DNSPod会给你返回2.2.2.2这个IP.如果你是电信用户,或者解析出来的IP不是2.2.2.2,那么就要修改系统的hosts表,对应记录添加进去.跟上一章不一样,上一章修改的是SQUID服务器的hosts表,你现在需要修改的是你用来测试SQUID的系统的hosts表. 除了修改hosts

  • 用DNSPod和Squid打造自己的CDN (六) 编译并安装Squid

    第 6 章 编译并安装Squid首先使用tar把源代码压缩包解压 tar zxvf squid-2.6.STABLE13.tar.gz 解压后,我们得到一个名为 squid-2.6.STABLE13 的目录.进入目录 cd squid-2.6.STABLE13 在configure前,我们必须要先设置cflags,这里我们假设CPU是intel core duo的,cpu family 6,model 14.通过 http://gentoo-wiki.com/Safe_Cflags#Intel_

  • 用DNSPod和Squid打造自己的CDN (七) 配置Squid

    第 7 章 配置Squid1.设置hosts表首先我们要明白一下squid在CDN中扮演的角色.squid在CDN中其实只是一个代理+缓存.跟一般的代理服务器类似,squid代替用户向真正有内容的服务器进行请求,并且缓存下来.所不同的是,squid是作为一个类似apache一样的web服务器存在,用户访问的时候并不感觉到是访问了一台代理服务器,而是一个真实的web服务器.一般情况下,我们把这种方式称之为"反向代理".所以,我们需要让squid知道内容要到哪里去取.因为我们已经把域名na

  • 用DNSPod和Squid打造自己的CDN (五) 安装Squid的前期准备

    第 5 章 安装Squid的前期准备 从本章开始,大家将会学到如何在Linux下面安装.编译程序,还会学到程序编译的优化方法,最后会通过源代码编译的方式把Squid安装上. 1.Linux下面程序安装的基本知识 A.程序安装包的分类平时大家在Windows下面安装程序,一般都是直接运行安装程序,然后安装程序会把编译好的二进制文件拷贝到系统里面,最终完成安装过程.Linux下面,安装程序的自由度比Windows要大.因为Linux下面大部分东西都是开源的,所以程序的提供方式一般是二进制包或者源代码

  • 用DNSPod和Squid打造自己的CDN (三) 安装CentOS Linux

    第 4 章 安装CentOS Linux 1.基本安装 把光盘塞进光驱,设置BIOS从光驱启动(别告诉我你不会),然后会看到启动界面,上面有一些提示,可以输入一些命令进行高级安装或者进入系统修复模式.不用管,直接按回车. 稍等一下,会出现一个界面要求你做光盘的完整性检查.一般来说现在刻出来的盘不会有坏的,除非是下载回来的ISO文件有问题.所以这里我们跳过. 跳过的方法是:按键盘的TAB键进行控件的选择,被选择上的控件会高亮,我们选择Skip(建议大家随时打开翻译工具或者网站对不懂的英文进行翻译)

  • 用DNSPod和Squid打造自己的CDN (四)

    1.基本安装 把光盘塞进光驱,设置BIOS从光驱启动(别告诉我你不会),然后会看到启动界面,上面有一些提示,可以输入一些命令进行高级安装或者进入系统修复模式.不用管,直接按回车. 稍等一下,会出现一个界面要求你做光盘的完整性检查.一般来说现在刻出来的盘不会有坏的,除非是下载回来的ISO文件有问题.所以这里我们跳过. 跳过的方法是:按键盘的TAB键进行控件的选择,被选择上的控件会高亮,我们选择Skip(建议大家随时打开翻译工具或者网站对不懂的英文进行翻译),然后按空格键进行确认. 然后再等一下,我

  • 用DNSPod和Squid打造自己的CDN(二)

    第 3 章 设置域名的DNS 重头戏开始前,我们先来热身.智能DNS可以说是CDN的基础.相信平时大家做网站都会有下面的情况:首页上放两个链接,电信用户请访问主力站点A,网通用户请访问镜像站点B.然后做两个域名,www.naizhao.com指向A,cnc.naizhao.com指向B.用户看了半天觉得头晕,随便点一个进去,发现访问速度真可以的,估计整个网页打开,中国都已经步入共产主义社会了.有了智能DNS后,上面的问题迎刃而解.用户只需要输入www.naizhao.com,系统就会自动判断用户

  • Squid集群做CDN全网加速配置分享

    主服务器群,然后在利用Squid逆向缓存web80端口来加速自己的网站.各大门户网站象163,sina,chinaitlab之类基本都是使用的这种技术,好处是大大的有.比如加速了网络和可以防黑客(因为他们见到的都是CDN的主机)这是利用Squid逆向集群模式做的一种应用 网络环境: 主服务器群:源Web服务器群 位于公网ip:220.XXX.XXX.X port:80(后台才是WEB的服务器) 注: 要保证TCP80,UDP3130在防火墙上是开的(供icp_port通讯使用,多台Squid集群

  • linux下通过Squid反向代理搭建CDN缓存服务器的配置方法

    案例:Web服务器:域名www.abc.com IP:192.168.21.129 电信单线路接入访问用户:电信宽带用户.移动宽带用户出现问题:电信用户打开www.abc.com正常,移动用户打开www.abc.com很慢,甚至打不开解决方案:在移动机房放置一台CDN代理服务器,通过智能DNS解析,让电信用户直接访问Web服务器.让移动用户访问CDN代理服务器,解决移动用户访问Web服务器慢的问题具体操作:CDN代理服务器:系统:CentOS 5.5 主机名:cdn.abc.com IP:192

随机推荐