注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Monodevelop

 
 
 

日志

 
 

关于对域名解析的一点理解  

2010-01-12 14:22:44|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

转自http://iamcaihuafeng.blog.sohu.com/118284898.html

DNS(Domain Name Server):域名服务器主要是用来进行域名解析,也就是由域名(如www.baidu.com)到ip地址(如119.75.213.50)的转换过程,因为网络之间的计算机只有通过ip才能够识别。

下面以百度为例,说说自己对域名解析的一点理解,从下面的结果可以看出,百度有自己的4台域名服务器,这4台域名服务器的域名分别如下:

C:\Users\caihuafeng>nslookup -qt=ns baidu.com

服务器:  ns.crcbj.com

Address:  61.233.9.9

非权威应答:

baidu.com       nameserver = ns2.baidu.com

baidu.com       nameserver = ns4.baidu.com

baidu.com       nameserver = ns3.baidu.com

baidu.com       nameserver = dns.baidu.com

ns3.baidu.com   internet address = 220.181.37.10

ns4.baidu.com   internet address = 220.181.38.10

dns.baidu.com   internet address = 202.108.22.220

ns2.baidu.com   internet address = 61.135.165.235

dns.baidu.com

ns2.baidu.com

ns3.baidu.com

ns4.baidu.com

这些域名服务器应该只是解析含有baidu.com的域名,应该不会提供其它域名的解析服务

要想使用自己的域名服务器,首先必须注册才能够使用,目前国际域名的DNS必须在国际域名注册商处注册,国内域名的DNS必须在CNNIC注册

由于域名服务器也是服务器,只不过是提供域名解析服务的服务器,因此上述4台服务器本身也要做域名解析,分别ping上述4个域名,输入的内容如下:

[root@192 ttserver]# ping -c 3 dns.baidu.com

PING dns.baidu.com (202.108.22.220) 56(84) bytes of data.

64 bytes from xd-22-220-a8.bta.net.cn (202.108.22.220): icmp_seq=1 ttl=53 time=60.4 ms

64 bytes from xd-22-220-a8.bta.net.cn (202.108.22.220): icmp_seq=2 ttl=53 time=61.3 ms

64 bytes from xd-22-220-a8.bta.net.cn (202.108.22.220): icmp_seq=3 ttl=53 time=60.9 ms

--- dns.baidu.com ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2000ms

rtt min/avg/max/mdev = 60.467/60.903/61.331/0.406 ms

[root@192 ttserver]# ping -c 3 ns2.baidu.com

PING ns2.baidu.com (61.135.165.235) 56(84) bytes of data.

64 bytes from 61.135.165.235: icmp_seq=1 ttl=52 time=62.1 ms

64 bytes from 61.135.165.235: icmp_seq=2 ttl=52 time=95.9 ms

64 bytes from 61.135.165.235: icmp_seq=3 ttl=52 time=63.6 ms

--- ns2.baidu.com ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 1999ms

rtt min/avg/max/mdev = 62.122/73.914/95.935/15.585 ms

[root@192 ttserver]# ping -c 3 ns3.baidu.com

PING ns3.baidu.com (220.181.37.10) 56(84) bytes of data.

64 bytes from 220.181.37.10: icmp_seq=1 ttl=53 time=63.3 ms

64 bytes from 220.181.37.10: icmp_seq=2 ttl=53 time=64.3 ms

64 bytes from 220.181.37.10: icmp_seq=3 ttl=53 time=64.2 ms

--- ns3.baidu.com ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2001ms

rtt min/avg/max/mdev = 63.396/64.024/64.379/0.445 ms

[root@192 ttserver]# ping -c 3 ns4.baidu.com

PING ns4.baidu.com (220.181.38.10) 56(84) bytes of data.

64 bytes from 220.181.38.10: icmp_seq=1 ttl=53 time=64.3 ms

64 bytes from 220.181.38.10: icmp_seq=2 ttl=53 time=64.5 ms

64 bytes from 220.181.38.10: icmp_seq=3 ttl=53 time=65.0 ms

--- ns4.baidu.com ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2001ms

rtt min/avg/max/mdev = 64.375/64.654/65.058/0.414 ms

跟踪百度的域名解析过程

[root@192 ttserver]# dig www.baidu.com +trace

; <<>> DiG 9.3.4-P1 <<>> www.baidu.com +trace

;; global options:  printcmd

.                       62157   IN      NS      J.ROOT-SERVERS.NET.

.                       62157   IN      NS      M.ROOT-SERVERS.NET.

.                       62157   IN      NS      C.ROOT-SERVERS.NET.

.                       62157   IN      NS      E.ROOT-SERVERS.NET.

.                       62157   IN      NS      L.ROOT-SERVERS.NET.

.                       62157   IN      NS      F.ROOT-SERVERS.NET.

.                       62157   IN      NS      A.ROOT-SERVERS.NET.

.                       62157   IN      NS      H.ROOT-SERVERS.NET.

.                       62157   IN      NS      G.ROOT-SERVERS.NET.

.                       62157   IN      NS      I.ROOT-SERVERS.NET.

.                       62157   IN      NS      K.ROOT-SERVERS.NET.

.                       62157   IN      NS      B.ROOT-SERVERS.NET.

.                       62157   IN      NS      D.ROOT-SERVERS.NET.

;; Received 432 bytes from 61.233.9.9#53(61.233.9.9) in 73 m

我的电脑TCP/IP连接中的DNS服务器地址,上述一共有13台服务器

com.                    172800  IN      NS      D.GTLD-SERVERS.NET.

com.                    172800  IN      NS      L.GTLD-SERVERS.NET.

com.                    172800  IN      NS      F.GTLD-SERVERS.NET.

com.                    172800  IN      NS      M.GTLD-SERVERS.NET.

com.                    172800  IN      NS      B.GTLD-SERVERS.NET.

com.                    172800  IN      NS      J.GTLD-SERVERS.NET.

com.                    172800  IN      NS      K.GTLD-SERVERS.NET.

com.                    172800  IN      NS      C.GTLD-SERVERS.NET.

com.                    172800  IN      NS      E.GTLD-SERVERS.NET.

com.                    172800  IN      NS      G.GTLD-SERVERS.NET.

com.                    172800  IN      NS      I.GTLD-SERVERS.NET.

com.                    172800  IN      NS      A.GTLD-SERVERS.NET.

com.                    172800  IN      NS      H.GTLD-SERVERS.NET.

;; Received 503 bytes from 192.58.128.30#53(J.ROOT-SERVERS.NET) in 119 ms

baidu.com.              172800  IN      NS      dns.baidu.com.

baidu.com.              172800  IN      NS      ns2.baidu.com.

baidu.com.              172800  IN      NS      ns3.baidu.com.

baidu.com.              172800  IN      NS      ns4.baidu.com.

;; Received 167 bytes from 192.41.162.30#53(L.GTLD-SERVERS.NET) in 330 ms

www.baidu.com.          1200    IN      CNAME   www.a.shifen.com.

a.shifen.com.           86411   IN      NS      ns5.a.shifen.com.

a.shifen.com.           86411   IN      NS      ns6.a.shifen.com.

a.shifen.com.           86411   IN      NS      ns1.a.shifen.com.

a.shifen.com.           86411   IN      NS      ns3.a.shifen.com.

;; Received 194 bytes from 202.108.22.220#53(dns.baidu.com) in 62 ms

以下内容来自百度百科,可以对照来进行理解

当您在浏览器中输入(www.seebod.com.),我们的电脑是如何得到IP地址的:

  1、浏览器发现是一个名字,于是调用我们机器内部的DNS Client软件,这个软件会把我们的请求发送到网卡Tcp/IP设置中的默认DNS服务器IP地址(上海电信提供DNS的服务器有3台,其中一台IP是 202.96.209.5):“您可以告诉我www.seebod.com.的IP地址吗?我这是一个递归查询”

  2、 202.96.209.5的DNS服务器会检查自己的DNS缓存,如果缓存里有,就直接返回给客户,如果没有,202.96.209.5就会向自己系统内部配置中负责.域的DNS服务器的IP地址(负责.域的那台DNS服务器位于美国,共13台,系统会随机选一台,这里比如是61.1.1.1)发出请求: “您能告诉我www.seebod.com.的IP地址吗?我这是一个跌代查询”

  3、.域DNS服务器61.1.1.1中包含负责net.域解析的IP地址,把查询结果返回给202.96.209.5:“负责net.域的DNS服务器地址是54.4.4.4”

  4、202.96.209.5收到上面的查询结果后,于是询问负责net.域的DNS服务器54.4.4.4 :“您能告诉我负责www.seebod.com.的IP地址吗?我这是一个跌代查询。”

  5、负责net.域的DNS服务器54.4.4.4把查询后的结果返回给202.96.209.5:“负责seebod.com.域的dns服务器的ip地址是 211.152.17.58”

  6、202.96.209.5收到上面的查询结果够,于是询问负责seebod.com.域的DNS服务器211.152.17.58:“您能告诉我www.seebod.com.所对应的IP地址吗?”

  7、211.152.17.58把查询后的结果返回给202.96.209.5:“www.seebod.com.对应的IP地址是211.100.26.123”

  8、202.96.209.5把最终结果放到自己的DNS缓存里,这样以后就不用再进行上面的跌代查询了。

  9、202.96.209.5把最终结果返回给最初发起请求的客户机。

  10、客户机的dns client软件把最终结果返回给浏览器。

  11、浏览器把目的IP地址连同http数据传递给网络层。

  12、网络层根据目标地址判断路由,发现目标IP地址211.152.17.58与本机不在同一个网段(判断是否是同一个网段使用子网掩码与目的IP地址做与运算),于是决定把次包发给网关。

  13、检查本地arp缓存表获得本地网关的MAC地址。

跟踪Google的域名解析过程

[root@192 ttserver]# dig www.google.com +trace

; <<>> DiG 9.3.4-P1 <<>> www.google.com +trace

;; global options:  printcmd

.                       78166   IN      NS      E.ROOT-SERVERS.NET.

.                       78166   IN      NS      F.ROOT-SERVERS.NET.

.                       78166   IN      NS      D.ROOT-SERVERS.NET.

.                       78166   IN      NS      A.ROOT-SERVERS.NET.

.                       78166   IN      NS      G.ROOT-SERVERS.NET.

.                       78166   IN      NS      H.ROOT-SERVERS.NET.

.                       78166   IN      NS      M.ROOT-SERVERS.NET.

.                       78166   IN      NS      I.ROOT-SERVERS.NET.

.                       78166   IN      NS      K.ROOT-SERVERS.NET.

.                       78166   IN      NS      J.ROOT-SERVERS.NET.

.                       78166   IN      NS      C.ROOT-SERVERS.NET.

.                       78166   IN      NS      B.ROOT-SERVERS.NET.

.                       78166   IN      NS      L.ROOT-SERVERS.NET.

;; Received 464 bytes from 61.233.9.9#53(61.233.9.9) in 66 ms

com.                    172800  IN      NS      J.GTLD-SERVERS.NET.

com.                    172800  IN      NS      C.GTLD-SERVERS.NET.

com.                    172800  IN      NS      M.GTLD-SERVERS.NET.

com.                    172800  IN      NS      D.GTLD-SERVERS.NET.

com.                    172800  IN      NS      I.GTLD-SERVERS.NET.

com.                    172800  IN      NS      B.GTLD-SERVERS.NET.

com.                    172800  IN      NS      E.GTLD-SERVERS.NET.

com.                    172800  IN      NS      H.GTLD-SERVERS.NET.

com.                    172800  IN      NS      G.GTLD-SERVERS.NET.

com.                    172800  IN      NS      L.GTLD-SERVERS.NET.

com.                    172800  IN      NS      A.GTLD-SERVERS.NET.

com.                    172800  IN      NS      K.GTLD-SERVERS.NET.

com.                    172800  IN      NS      F.GTLD-SERVERS.NET.

;; Received 504 bytes from 192.203.230.10#53(E.ROOT-SERVERS.NET) in 263 ms

google.com.             172800  IN      NS      ns1.google.com.

google.com.             172800  IN      NS      ns2.google.com.

google.com.             172800  IN      NS      ns3.google.com.

google.com.             172800  IN      NS      ns4.google.com.

;; Received 168 bytes from 192.48.79.30#53(J.GTLD-SERVERS.NET) in 283 ms

www.google.com.         604800  IN      CNAME   www.l.google.com.

l.google.com.           86400   IN      NS      c.l.google.com.

l.google.com.           86400   IN      NS      d.l.google.com.

l.google.com.           86400   IN      NS      e.l.google.com.

l.google.com.           86400   IN      NS      a.l.google.com.

l.google.com.           86400   IN      NS      g.l.google.com.

l.google.com.           86400   IN      NS      b.l.google.com.

l.google.com.           86400   IN      NS      f.l.google.com.

;; Received 276 bytes from 216.239.32.10#53(ns1.google.com) in 793 ms

dns的详细文档请看这儿,http://baike.baidu.com/view/22276.htm

BTW: 注册域名服务器、注册域名等这些操作基本上没怎么实践过,以后如果有机会实践的会对DNS这一套东西理解得更加透彻。

  评论这张
 
阅读(327)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017