• 请不要在回答技术问题时复制粘贴 AI 生成的内容
anonymoustian
V2EX  ›  程序员

域名是如何做到多级的?

  •  
  •   anonymoustian · Apr 26, 2016 · 6639 views
    This topic created in 3688 days ago, the information mentioned may be changed or developed.

    比如说 QQ 空间: 556622333.qzone.qq.com qq.com 就是主域名, qzone 相当于二级域名,前面的 QQ 号就是三级域名了。

    但是有那么多 QQ 号, QQ 是怎么管理和做到的呢?

    另外 比如说 1de928978e2bf219f76e1c5c2a9ccb1a.ime.static.baidu.com

    这样的域名是怎么注册和解析的呢?

    能不能详细说说

    23 replies    2016-04-26 18:15:10 +08:00
    abelyao
        1
    abelyao  
       Apr 26, 2016
    有个东西叫:泛域名解析
    sarices
        2
    sarices  
       Apr 26, 2016
    *.qzone.qq.com *.ime.static.baidu.com *.qq.com
    BOYPT
        3
    BOYPT  
       Apr 26, 2016
    主机名写星号
    WO31400
        4
    WO31400  
       Apr 26, 2016
    目测泛解析
    loading
        5
    loading  
       Apr 26, 2016
    收到请求后,会向上询问,也就是 qzone.qq.com qq.com ,在这一级解析就可以了。
    一级一级向上。
    stabc
        6
    stabc  
       Apr 26, 2016
    其实我倒有一个问题,就是 DNS 服务器查询域名的时候,如果是个泛解析(*.domain.com), TTL 一小时,然后查询了一个 aa.domain.com ,然后一小时之内又查询了 bb.domain.com ,会不会继续去 NS 请求?
    也就是说, DNS 服务器缓存的是 aa.domain.com 还是*.domain.com
    jasontse
        7
    jasontse  
       Apr 26, 2016 via iPad
    可以利用 DNS 提供的 API 或者直接泛解析
    anonymoustian
        8
    anonymoustian  
    OP
       Apr 26, 2016
    @sarices 这样解析了以后,那么 QQ 空间怎么知道是谁的空间呢?
    Pastsong
        9
    Pastsong  
       Apr 26, 2016
    @anonymoustian 服务器是知道完整的请求域名啊,和 DNS 又没关系
    raysonx
        10
    raysonx  
       Apr 26, 2016
    实现上肯定是泛域名解析。至于解析的过程,可以用 linux 下的 dig 工具来追踪:
    $ dig +trace 556622333.qzone.qq.com

    ; <<>> DiG 9.10.3-P4-RedHat-9.10.3-12.P4.fc23 <<>> +trace 556622333.qzone.qq.com
    ;; global options: +cmd
    . 63342 IN NS f.root-servers.net.
    . 63342 IN NS c.root-servers.net.
    . 63342 IN NS l.root-servers.net.
    . 63342 IN NS b.root-servers.net.
    . 63342 IN NS g.root-servers.net.
    . 63342 IN NS a.root-servers.net.
    . 63342 IN NS d.root-servers.net.
    . 63342 IN NS m.root-servers.net.
    . 63342 IN NS k.root-servers.net.
    . 63342 IN NS j.root-servers.net.
    . 63342 IN NS h.root-servers.net.
    . 63342 IN NS e.root-servers.net.
    . 63342 IN NS i.root-servers.net.
    . 64157 IN RRSIG NS 8 0 518400 20160430170000 20160420160000 60615 . Ecdb/rlP/h1SrPjDlvw7rUwVMpyP0cm1mkrRW9FGYpPHXKbdgAXJ6QyS MPlpacO5LZomFbBcBmRudkVi7m0DOyY1YlDtfnpls4dKjiBk3ItdWBfl +HO9cV1hwj1gL4D6SDo/hrhvk1jbIYrkeBpZuVQ3AI3FsopJu92mIDZr PV8=
    ;; Received 397 bytes from 10.72.17.5#53(10.72.17.5) in 1 ms

    com. 172800 IN NS a.gtld-servers.net.
    com. 172800 IN NS b.gtld-servers.net.
    com. 172800 IN NS c.gtld-servers.net.
    com. 172800 IN NS d.gtld-servers.net.
    com. 172800 IN NS e.gtld-servers.net.
    com. 172800 IN NS f.gtld-servers.net.
    com. 172800 IN NS g.gtld-servers.net.
    com. 172800 IN NS h.gtld-servers.net.
    com. 172800 IN NS i.gtld-servers.net.
    com. 172800 IN NS j.gtld-servers.net.
    com. 172800 IN NS k.gtld-servers.net.
    com. 172800 IN NS l.gtld-servers.net.
    com. 172800 IN NS m.gtld-servers.net.
    com. 86400 IN DS 30909 8 2 E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CF C41A5766
    com. 86400 IN RRSIG DS 8 1 86400 20160505170000 20160425160000 60615 . ZGFmiWOOFQeI0nhN6otmA5DM3jq5R3hXaciQCANvDVFDozqIeWlV0iLK m3D8Yu9vjp+tbug0+06ionIg4dCzX3zNsH3JqjumVIdziGyR9nwU54XP g3B2ygltuFr3APr4P8Y5B87JGlXQDE6dEDyXyoad94pmJTnmS/J6FhXF sjg=
    ;; Received 746 bytes from 199.7.83.42#53(l.root-servers.net) in 3 ms

    qq.com. 172800 IN NS ns1.qq.com.
    qq.com. 172800 IN NS ns2.qq.com.
    qq.com. 172800 IN NS ns3.qq.com.
    qq.com. 172800 IN NS ns4.qq.com.
    CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A NS SOA RRSIG DNSKEY NSEC3PARAM
    CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20160502045841 20160425034841 34745 com. eTc6yc1G33jNdyDy+1e2SW+6qRIWht5EKnKeMO9cPxGC/KQ2VXrNKyA+ hK+yneELNfEvH+RZuSKzhYIqeMYp++4j7Lcl10AAydUte6ZElrJihmcs 4jhQVE5NOlCBOEUxiI6JxWPBcR8dKSl3CZjNKUyNuEWcH99B4RD+EHc3 3xo=
    J974KM8QMLVAO2IHHPI9PTK9JD8Q2RU0.com. 86400 IN NSEC3 1 1 0 - J97BMN39U8LG6K2KCC60K2TGA0M5UO2R NS DS RRSIG
    J974KM8QMLVAO2IHHPI9PTK9JD8Q2RU0.com. 86400 IN RRSIG NSEC3 8 2 86400 20160429044956 20160422033956 34745 com. HsTt62NgWSJ3+ji8BdmcmzLuvr3MaYmrmKgErQQ15W7jQpUUcV6KzyMj FBHYLJPct2lx3g8vgjWvmYQIta5nSuz5NM4X3jz4ynof1+fN1O/72o9S Gnk8hpzzoMCF4f82DMWputZhPL81z9IkZgDJWzcqDDxjeUXpRPFJeDGJ Jy0=
    ;; Received 768 bytes from 192.33.14.30#53(b.gtld-servers.net) in 268 ms

    qzone.qq.com. 86400 IN NS ns-cmn1.qq.com.
    qzone.qq.com. 86400 IN NS ns-tel1.qq.com.
    qzone.qq.com. 86400 IN NS ns-cnc1.qq.com.
    qzone.qq.com. 86400 IN NS ns-os1.qq.com.
    ;; Received 282 bytes from 182.140.167.157#53(ns3.qq.com) in 58 ms

    556622333.qzone.qq.com. 600 IN A 140.207.123.151
    ;; Received 67 bytes from 101.226.66.18#53(ns-tel1.qq.com) in 74 ms
    raysonx
        11
    raysonx  
       Apr 26, 2016
    @stabc 按照你说的例子,缓存的是 aa.domain.com ,不存在缓存泛域名的说法。
    DNS 的客户端(递归 DNS 服务器)并不知道你做的是泛解析,在它看来就是普通的解析。
    sarices
        12
    sarices  
       Apr 26, 2016
    @anonymoustian 那个是你程序的事情了,和域名没什么关系
    raysonx
        13
    raysonx  
       Apr 26, 2016
    @anonymoustian
    HTTP 服务器区分谁的空间不是依靠 DNS ,而是 HTTP 头的 HOST 字段。
    HTTP 客户端(即浏览器)在向 HTTP 服务器发送 HTTP 请求时,会在 HOST 字段中携带完整域名供 WEB 服务器区分。
    ytmsdy
        14
    ytmsdy  
       Apr 26, 2016
    泛域名解析据说是提高网站收录和权重的黑科技。。。。
    raysonx
        15
    raysonx  
       Apr 26, 2016
    另外,补充一个大多数国人都是混淆的概念:
    556622333.qzone.qq.com 这个域名中,
    com 是顶级域(Top level domain, TLD)
    qq.com 是二级域
    dreamcountry
        16
    dreamcountry  
       Apr 26, 2016
    @ytmsdy 真的么
    ytmsdy
        17
    ytmsdy  
       Apr 26, 2016
    @dreamcountry 真的,刚刚开始会有好多好多好的爬虫爬你,然后收录,然后被 K 。。
    Busy
        18
    Busy  
       Apr 26, 2016
    不用泛域名
    偶尔要用到, name.com 是支持这种解析的
    www.domain.com --> ip1
    xx.yy.zz.domain.com --> ip2
    dreamcountry
        19
    dreamcountry  
       Apr 26, 2016
    @ytmsdy 好调皮你
    SourceMan
        20
    SourceMan  
       Apr 26, 2016 via iPhone
    @raysonx 我们的产品同时支持 Android 系统和 iPhone 系统
    Tink
        21
    Tink  
    PRO
       Apr 26, 2016 via iPhone
    @anonymoustian QQ 空间自己有数据库,这不就是一张表就解决了的问题么
    YYYDNS
        22
    YYYDNS  
       Apr 26, 2016 via Android
    泛域名解析加 web 服务器伪静态
    tintsoft
        23
    tintsoft  
       Apr 26, 2016
    用泛解析+伪静态解决
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3236 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 76ms · UTC 14:08 · PVG 22:08 · LAX 07:08 · JFK 10:08
    ♥ Do have faith in what you're doing.