精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>网络专区>>● CISCO>>名词解释>>域名的概念与机制(5)

主题:域名的概念与机制(5)
发信人: sage.cao(sage)
整理人: amac(2002-05-05 08:54:43), 站内信件
5.例子

在我们的例子空间中,假设我们希望将根管理权分散到MIL,EDU,MIT.EDU和ISI.EDU区,我们可以按下图分配名字服务器:(认证权威将被加上括号)

 

                                   |(C.ISI.EDU,SRI-NIC.ARPA
                                   | A.ISI.EDU)
             +---------------------+------------------+
             |                     |                  |
            MIL                   EDU                ARPA
             |(SRI-NIC.ARPA,       |(SRI-NIC.ARPA,    |
             | A.ISI.EDU           | C.ISI.EDU)       |
       +-----+-----+               |     +------+-----+-----+
       |     |     |               |     |      |           |
      BRL  NOSC  DARPA             |  IN-ADDR  SRI-NIC     ACC
                                   |
       +--------+------------------+---------------+--------+
       |        |                  |               |        |
      UCI      MIT                 |              UDEL     YALE
                |(XX.LCS.MIT.EDU, ISI
                |ACHILLES.MIT.EDU) |(VAXA.ISI.EDU,VENERA.ISI.EDU,
            +---+---+              | A.ISI.EDU)
            |       |              |
           LCS   ACHILLES +--+-----+-----+--------+
            |             |  |     |     |        |
            XX            A  C   VAXA  VENERA Mockapetris
根名字服务器在C.ISI.EDU,SRI-NIC.ARPA和A.ISI.EDU,MIL域由SRI-NIC.ARPA和A.ISI.EDU支撑;EDU域由SRI-NIC.ARPA和C.ISI.EDU,服务器拥有的区可以连接也可以不连接,本例中,C.ISI.EDU和根及EDU域连接,A.ISI.EDU和根及MIL域有连接,但和ISI.EDU有一个不连接的区。

5.1. C.ISI.EDU名字服务器

C.ISI.EDU是IN级的根,MIL,EDU域的名字服务器,也拥有这些域的区,对根域的区数据如下:

    .       IN      SOA     SRI-NIC.ARPA. HOSTMASTER.SRI-NIC.ARPA. (
                            870611          ;serial
                            1800            ;refresh every 30 min
                            300             ;retry every 5 min
                            604800          ;expire after a week
                            86400)          ;minimum of a day
                    NS      A.ISI.EDU.
                    NS      C.ISI.EDU.
                    NS      SRI-NIC.ARPA.
    MIL.    86400   NS      SRI-NIC.ARPA.
            86400   NS      A.ISI.EDU.
    EDU.    86400   NS      SRI-NIC.ARPA.
            86400   NS      C.ISI.EDU.
    SRI-NIC.ARPA.   A       26.0.0.73
                    A       10.0.0.51
                    MX      0 SRI-NIC.ARPA.
                    HINFO   DEC-2060 TOPS20
    ACC.ARPA.       A       26.6.0.65
                    HINFO   PDP-11/70 UNIX
                    MX      10 ACC.ARPA.
    USC-ISIC.ARPA.  CNAME   C.ISI.EDU.
    73.0.0.26.IN-ADDR.ARPA.  PTR    SRI-NIC.ARPA.
    65.0.6.26.IN-ADDR.ARPA.  PTR    ACC.ARPA.
    51.0.0.10.IN-ADDR.ARPA.  PTR    SRI-NIC.ARPA.
    52.0.0.10.IN-ADDR.ARPA.  PTR    C.ISI.EDU.
    103.0.3.26.IN-ADDR.ARPA. PTR    A.ISI.EDU.
    A.ISI.EDU. 86400 A      26.3.0.103
    C.ISI.EDU. 86400 A      10.0.0.52
这些数据可能存在于配置文件中(master file)中。大多数RR是一行一个,唯一的例外是SOA RR,它表示多行RR的结束。因为一个区中的所有RR的class必须相同,因此只有区中的第一个RR需要指定class。当服务器装入一个区时,它设置所有认证数据的TTL至少于SOA域的MINUMUM那么大或为一天,这里为86400秒。NS RR标记了MIL和EDU域的相关服务器,它和服务器地址关联RR一起的,但是NS RR并不是区中认证数据。

有四个RR和根结点相关:一个描述根区的RR,3个用于列出根的名字服务器。在SOA RR中的数据描述对区的管理。区数据由主机SRI-NIC.ARPA保存,区的责任方是[email protected],SOA的主要条目是86400秒(TTL),这就意味着区中所有认证数据至少是TTL,也可以指定更大的数值。

MIL和EDU域的NS RR标准了根区和MIL,EDU区的边界。注意本例中支持最低区的服务器也支持根区。EDU区中的配置文件(master file)必须相对于源EDU设置,EDU域中的数据可能是:

    EDU.  IN SOA SRI-NIC.ARPA. HOSTMASTER.SRI-NIC.ARPA. (
                            870729 ;serial
                            1800 ;refresh every 30 minutes
                            300 ;retry every 5 minutes
                            604800 ;expire after a week
                            86400 ;minimum of a day
                            )
                    NS SRI-NIC.ARPA.
                    NS C.ISI.EDU.
    UCI 172800 NS ICS.UCI
                    172800 NS ROME.UCI
    ICS.UCI 172800 A 192.5.19.1
    ROME.UCI 172800 A 192.5.19.31
    ISI 172800 NS VAXA.ISI
                    172800 NS A.ISI
                    172800 NS VENERA.ISI.EDU.
    VAXA.ISI 172800 A 10.2.0.27
                    172800 A 128.9.0.33
    VENERA.ISI.EDU. 172800 A 10.1.0.52
                    172800 A 128.9.0.32
    A.ISI 172800 A 26.3.0.103
    UDEL.EDU.  172800 NS LOUIE.UDEL.EDU.
                    172800 NS UMN-REI-UC.ARPA.
    LOUIE.UDEL.EDU. 172800 A 10.0.0.96
                    172800 A 192.5.39.3
    YALE.EDU.  172800 NS YALE.ARPA.
    YALE.EDU.  172800 NS YALE-BULLDOG.ARPA.
    MIT.EDU.  43200 NS XX.LCS.MIT.EDU.
                      43200 NS ACHILLES.MIT.EDU.
    XX.LCS.MIT.EDU.  43200 A 10.0.0.44
    ACHILLES.MIT.EDU. 43200 A 18.72.0.8
请注意相对名字的使用,ISI.EDU.的拥有者是一个相对名。文件可以使用相对名和绝对名,混合使用。

5.2. 标准查询例子

下面的查询和响应显示了服务器的动作,除非说明,查询都没有进行循环查询。注意,对非循环查询的响应必须依赖于查询的服务器,不依赖于请求者。

5.2.1. QNAME=SRI-NIC.ARPA,QTYPE=A

查询如下:

               +---------------------------------------------+
    Header     | OPCODE=SQUERY                               |
               +---------------------------------------------+
    Question   | QNAME=SRI-NIC.ARPA., QCLASS=IN, QTYPE=A     |
               +---------------------------------------------+
    Answer     | <empty>                                     |
               +---------------------------------------------+
    Authority  | <empty>                                     |
               +---------------------------------------------+
    Additional | <empty>                                     |
               +---------------------------------------------+
响应应该是:
               +--------------------------------------------+
    Header     | OPCODE=SQUERY, RESPONSE, AA                |
               +--------------------------------------------+
    Question   | QNAME=SRI-NIC.ARPA., QCLASS=IN, QTYPE=A    |
               +--------------------------------------------+
    Answer     | SRI-NIC.ARPA. 86400 IN A 26.0.0.73         |
               |               86400 IN A 10.0.0.51         |
               +--------------------------------------------+
    Authority  | <empty>                                    |
               +--------------------------------------------+
    Additional | <empty>                                    |
               +--------------------------------------------+

响应的头和查询头挺象,除了RESPONSE位的设置不同,还有就是AA位的设置,表示此数据来自认证权威。响应的question区和查询的question区一致。如果相同的查询发送到其它非SRI-NIC.ARPA的认证性质服务器,响应可能是:

               +---------------------------------------------------+
    Header     | OPCODE=SQUERY,RESPONSE                            |
               +---------------------------------------------------+
    Question   | QNAME=SRI-NIC.ARPA., QCLASS=IN, QTYPE=A           |
               +---------------------------------------------------+
    Answer     | SRI-NIC.ARPA. 1777 IN A 10.0.0.51                 |
               |               1777 IN A 26.0.0.73                 |
               +---------------------------------------------------+
    Authority  | <empty>                                           |
               +---------------------------------------------------+
    Additional | <empty>                                           |
               +---------------------------------------------------+

这个响应和上面的响应不同,AA位不同,TTL不同,此数据可能不来自于一个区,而来自缓冲。认证TTL和这里的TTL不同是因为处于缓冲中的原因,响应区中的RR的不同不用注意。

5.2.2. QNAME=SRI-NIC.ARPA,QTYPE=* 

这个查询和上面的很象,但是QTYPE=*,从C.ISI.EDU接收到的响应如下: 

               +---------------------------------------------------+
    Header     | OPCODE=SQUERY, RESPONSE, AA                       |
               +---------------------------------------------------+
    Question   | QNAME=SRI-NIC.ARPA., QCLASS=IN, QTYPE=*           |
               +---------------------------------------------------+
    Answer     | SRI-NIC.ARPA. 86400 IN  A     26.0.0.73           |
               |                         A     10.0.0.51           |
               |                         MX    0 SRI-NIC.ARPA.     |
               |                         HINFO DEC-2060 TOPS20     |
               +---------------------------------------------------+
    Authority  | <empty>                                           |
               +---------------------------------------------------+
    Additional | <empty>                                           |
               +---------------------------------------------------+
如果相同的查询发到两个非SRI-NIC.ARPA区中的非认证性质的服务器,响应如下:
               +---------------------------------------------------+
    Header     | OPCODE=SQUERY, RESPONSE                           |
               +---------------------------------------------------+
    Question   | QNAME=SRI-NIC.ARPA., QCLASS=IN, QTYPE=*           |
               +---------------------------------------------------+
    Answer     | SRI-NIC.ARPA. 12345 IN     A       26.0.0.73      |
               |                            A       10.0.0.51      |
               +---------------------------------------------------+
    Authority  | <empty>                                           |
               +---------------------------------------------------+
    Additional | <empty>                                           |
               +---------------------------------------------------+

               +---------------------------------------------------+
    Header     | OPCODE=SQUERY, RESPONSE                           |
               +---------------------------------------------------+
    Question   | QNAME=SRI-NIC.ARPA., QCLASS=IN, QTYPE=*           |
               +---------------------------------------------------+
    Answer     | SRI-NIC.ARPA. 1290 IN HINFO  DEC-2060 TOPS20      |
               +---------------------------------------------------+
    Authority  | <empty>                                           |
               +---------------------------------------------------+
    Additional | <empty>                                           |
               +---------------------------------------------------+
未设置AA位,因此响应不是认证数据,TTL不同,表示缓冲的时候不同,头一个是因为QTYPE=A查询而缓冲的,第二个是进行HINFO查询后响应而缓冲的。

5.2.3. QNAME=SRI-NIC.ARPA,QTYPE=MX

此类的查询可以来自邮件发送者,它希望查询邮件地址[email protected]的路由信息,从C.ISI.EDU获得的响应可能是:

               +---------------------------------------------------+
    Header     | OPCODE=SQUERY, RESPONSE, AA                       |
               +---------------------------------------------------+
    Question   | QNAME=SRI-NIC.ARPA., QCLASS=IN, QTYPE=MX          |
               +---------------------------------------------------+
    Answer     | SRI-NIC.ARPA. 86400 IN     MX      0 SRI-NIC.ARPA.|
               +---------------------------------------------------+
    Authority  | <empty>                                           |
               +---------------------------------------------------+
    Additional | SRI-NIC.ARPA. 86400 IN     A       26.0.0.73      |
               |                            A       10.0.0.51      |
               +---------------------------------------------------+
响应中包括MX RR,附加区域包括地址RR,因为C.ISI.EDU的名字服务器猜测请求者可能需要这个地址。

5.2.4. QNAME=SRI-NIC.ARPA,QTYPE=NS C.ISI.EDU的响应如下:

               +---------------------------------------------------+
    Header     | OPCODE=SQUERY, RESPONSE, AA                       |
               +---------------------------------------------------+
    Question   | QNAME=SRI-NIC.ARPA., QCLASS=IN, QTYPE=NS          |
               +---------------------------------------------------+
    Answer     | <empty>                                           |
               +---------------------------------------------------+
    Authority  | <empty>                                           |
               +---------------------------------------------------+
    Additional | <empty>                                           |
               +---------------------------------------------------+
响应与查询的区别在于AA位和RESPONSE位,此服务器是名字的认证权威,而且名字存在。 

5.2.5. QNAME=SIR-NIC.ARPA,QTYPE=A

如果主机名错误,C.ISI.EDU的响应如下:

               +---------------------------------------------------+
    Header     | OPCODE=SQUERY, RESPONSE, AA, RCODE=NE             |
               +---------------------------------------------------+
    Question   | QNAME=SIR-NIC.ARPA., QCLASS=IN, QTYPE=A           |
               +---------------------------------------------------+
    Answer     | <empty>                                           |
               +---------------------------------------------------+
    Authority  | . SOA SRI-NIC.ARPA. HOSTMASTER.SRI-NIC.ARPA.      |
               |       870611 1800 300 604800 86400                |
               +---------------------------------------------------+
    Additional | <empty>                                           |
               +---------------------------------------------------+
响应表示名字不存在,错误码在头的RCODE区中给出。认证区中的SOA RR是可选的否定缓冲数据,它可以让resolver使用这个响应来使请求者在SOA MINIMUM(86400)秒内认为此名字不存在。

5.2.6. QNAME=BRL.MIL,QTYPE=A

如果查询发到C.ISI.EDU,响应是:

               +---------------------------------------------------+
    Header     | OPCODE=SQUERY, RESPONSE                           |
               +---------------------------------------------------+
    Question   | QNAME=BRL.MIL, QCLASS=IN, QTYPE=A                 |
               +---------------------------------------------------+
    Answer     | <empty>                                           |
               +---------------------------------------------------+
    Authority  | MIL.             86400 IN NS       SRI-NIC.ARPA.  |
               |                  86400    NS       A.ISI.EDU.     |
               +---------------------------------------------------+
    Additional | A.ISI.EDU.                A        26.3.0.103     |
               | SRI-NIC.ARPA.             A        26.0.0.73      |
               |                           A        10.0.0.51      |
               +---------------------------------------------------+
响应有一个空的回答区,但它不是认证的,只是一个参考。在C.ISI.EDU知道自己不是MIL的认证权威,因此向请求者推荐了在A.ISI.EDU和SRI-NIC.ARPA上的服务器,它们是MIL的认证权威。


 



----
 

SAGE = Semi-Automatic Ground Environment 半自动地面防空警备系统[装置],最早的网络系统
Sage[ seidV ] adj.贤明的, 明智的, 审慎的
                n.贤人, 圣人 
sage            n. 鼠尾草(花语:尊敬,轰轰烈烈的爱......)
  
                                              

[关闭][返回]