Posted on 2008-08-18 14:52
chris_lee 阅读(1523)
评论(1) 编辑 收藏 引用 所属分类:
F5&NetScaler技术篇
下面假设客户访问www.abc.com的dns请求流程如图:
1, 首先向其所在运营商的Local DNS发起www.abc.com域名的DNS请求,步骤1;
2, 运营商的Local DNS服务器从RootDNS得知www.abc.com由DNS-CTC、DNS-CNC、DNS-USA1和DNS-USA2来解析,即RootDNS同时返回此4个DNS服务器地址给LDNS(这是DNS的工作原理,它一定会返回所有关于请求的记录,在此即4个DNS服务器。如果只返回一个DNS而此DNS刚好中断服务了,那么Local DNS只能是解析失败了),步骤2和3;
3, Local DNS轮询向这4个DNS服务器发出域名解析的请求,直到返回数据,步骤4;
4, 假如DNS-CTC相应LDNS的域名解析请求,同时返回2台GTM的地址(Listener),步骤5;
5, 接受到请求的GTM首先查询在本地是否有该Local DNS的就近性表项,如果存在,则直接给Local DNS返回速度最快的服务器地址。如果不存在,则通知另外一台GTM发起对该Local DNS的查询,步骤6和7;
6, 两台3DNS分别对LocalDNS进行Probe。例如GTM-A查询该Local DNS的RTT时间为50ms,而GTM-B查询同一Local DNS的RTT时间为100ms,则此时在两台GTM内都形成了该Local DNS的对应就近性表记录;
7, 接受到Local DNS请求的GTM-A根据系统的就近性表返回相应的Data Center内的WEB服务器地址(即1.1.1.1),步骤8;
8, Local DNS获得地址后,将该地址返回给用户,到此DNS请求过程结束,步骤9;
9, 用户向www.albc.com(1.1.1.1)网站发起访问,步骤10。