什么是域名?

预备知识 首先,你需要了解互联网如何工作,并理解URL 是什么
目标 了解域名是什么、它们如何工作以及为什么它们很重要。

总结

域名是互联网基础设施的关键组成部分。它们为互联网上的任何 Web 服务器提供了一个人类可读的地址。

任何连接到互联网的计算机都可以通过一个公共的IP 地址进行访问,无论是 IPv4 地址(例如,192.0.2.172)还是 IPv6 地址(例如,2001:db8:8b73:0000:0000:8a2e:0370:1337)。

计算机可以轻松处理这些地址,但人们很难弄清楚是谁在运行服务器或网站提供什么服务。IP 地址很难记住,并且可能会随着时间的推移而改变。

为了解决所有这些问题,我们使用称为域名的、人类可读的地址。

深入探讨

域名结构

域名具有一个简单的结构,由几个部分组成(可能只有一个部分,两个、三个……),它们由点分隔,并从右到左读取

Anatomy of the MDN domain name

这些部分中的每一个都提供了关于整个域名的特定信息。

顶级域名 (TLD)

顶级域名告诉用户域名背后服务的总体用途。最通用的顶级域名(.com.org.net)不要求 Web 服务满足任何特定标准,但某些顶级域名会强制执行更严格的策略,以便更清楚地了解其用途。例如:

  • 本地顶级域名,如 .us.fr.se,可能会要求服务以特定语言提供或托管在特定国家/地区——它们旨在指示特定语言或国家/地区的资源。
  • 包含 .gov 的顶级域名仅允许政府部门使用。
  • .edu 顶级域名仅供教育和学术机构使用。

顶级域名可以包含特殊字符和拉丁字符。顶级域名的最大长度为 63 个字符,但大多数约为 2-3 个字符。

顶级域名的完整列表由 ICANN 维护

标签(或组件)

标签是紧跟在顶级域名后面的部分。标签是区分大小写的字符序列,长度从一个到六十三个字符不等,仅包含字母 AZ、数字 09 以及 '-' 字符(该字符不能是标签的第一个或最后一个字符)。a97hello-strange-person-16-how-are-you 都是有效标签的示例。

紧邻顶级域名的标签也称为二级域名 (SLD)。

一个域名可以有多个标签(或组件)。形成域名不一定非要 3 个标签。例如,informatics.ed.ac.uk 是一个有效的域名。对于您控制的任何域名(例如,mozilla.org),您可以创建具有不同内容的“子域名”,例如 developer.mozilla.orgsupport.mozilla.orgbugzilla.mozilla.org

购买域名

谁拥有域名?

你不能“购买域名”。这是为了让未使用的域名最终可以被其他人再次使用。如果每个域名都被购买了,网络很快就会充斥着未被任何人使用的、被锁定的域名。

相反,你需要支付一年或多年的使用域名的权利。你可以续订你的权利,并且你的续订优先于其他人申请。但你永远不拥有域名。

称为注册商的公司使用域名注册中心来跟踪连接你与你的域名的技术和管理信息。

注意:对于某些域名,可能不是注册商负责跟踪。例如,.fire 下的每个域名都由 Amazon 管理。

查找可用域名

要了解给定的域名是否可用,请执行以下操作:

  • 访问域名注册商的网站。大多数注册商都提供“whois”服务,可以告诉你域名是否可用。

  • 或者,如果你使用带有内置 shell 的系统,请在其中键入 whois 命令,如下所示,以 mozilla.org 为例:

    bash
    whois mozilla.org
    

    这将输出以下内容:

    Domain Name:MOZILLA.ORG
    Domain ID: D1409563-LROR
    Creation Date: 1998-01-24T05:00:00Z
    Updated Date: 2013-12-08T01:16:57Z
    Registry Expiry Date: 2015-01-23T05:00:00Z
    Sponsoring Registrar:MarkMonitor Inc. (R37-LROR)
    Sponsoring Registrar IANA ID: 292
    WHOIS Server:
    Referral URL:
    Domain Status: clientDeleteProhibited
    Domain Status: clientTransferProhibited
    Domain Status: clientUpdateProhibited
    Registrant ID:mmr-33684
    Registrant Name:DNS Admin
    Registrant Organization:Mozilla Foundation
    Registrant Street: 650 Castro St Ste 300
    Registrant City:Mountain View
    Registrant State/Province:CA
    Registrant Postal Code:94041
    Registrant Country:US
    Registrant Phone:+1.6509030800
    

如你所见,我无法注册 mozilla.org,因为 Mozilla Foundation 已经注册了它。

另一方面,让我们看看我是否可以注册 afunkydomainname.org

bash
whois afunkydomainname.org

这将输出以下内容(截至撰写本文时):

NOT FOUND

如你所见,该域名不存在于 whois 数据库中,因此我们可以申请注册它。这点很有用!

获取域名

过程相当简单:

  1. 访问注册商的网站。
  2. 通常会有一个醒目的“获取域名”号召性用语。点击它。
  3. 用所有必需的详细信息填写表格。特别是,请确保你没有拼错你想要的域名。一旦支付,就太晚了!
  4. 注册商会让你知道何时域名已成功注册。几小时内,所有 DNS 服务器都会收到你的 DNS 信息。

注意:在此过程中,注册商会要求你的真实地址。请确保你正确填写,因为在某些国家/地区,如果无法提供有效地址,注册商可能会被迫关闭该域名。

DNS 刷新

DNS 数据库存储在世界各地的每个 DNS 服务器上,所有这些服务器都指向一些特殊的服务器,称为“权威名称服务器”或“顶级 DNS 服务器”——它们就像管理系统的老板服务器。

每当你的注册商创建或更新某个域名的信息时,该信息必须在每个 DNS 数据库中进行刷新。每个知道该域名的 DNS 服务器都会存储该信息一段时间,然后它会自动失效并被刷新(DNS 服务器会查询权威服务器并从其获取更新后的信息)。因此,知道该域名的 DNS 服务器需要一些时间才能获取最新信息。

DNS 请求是如何工作的?

正如我们已经看到的,当你想在浏览器中显示网页时,输入域名比输入 IP 地址更方便。让我们看看这个过程:

  1. 在浏览器的地址栏中输入 mozilla.org
  2. 你的浏览器会询问你的计算机是否已经识别该域名对应的 IP 地址(使用本地 DNS 缓存)。如果已识别,则名称将转换为 IP 地址,然后浏览器与 Web 服务器协商内容。故事结束。
  3. 如果你的计算机不知道 mozilla.org 名称背后是哪个 IP,它会继续询问 DNS 服务器,DNS 服务器的职责正是告诉你的计算机哪个 IP 地址匹配每个已注册的域名。
  4. 现在计算机知道了请求的 IP 地址,你的浏览器就可以与 Web 服务器协商内容了。

Explanation of the steps needed to obtain the result to a DNS request

后续步骤

好的,我们讨论了很多关于过程和架构的内容。该继续前进。

  • 如果你想动手实践,现在是深入研究设计并探索网页结构的好时机。
  • 还值得注意的是,构建网站的某些方面需要花钱。请参阅构建网站需要多少费用
  • 或者在 Wikipedia 上阅读更多关于域名的信息。
  • DNS 如何工作》教程有一个有趣且生动的解释。