通过本文可以了解以下几个问题:
域名注册及建站流程;
域名注册的技术原理;
域名管理(修改DNS服务器、转入转出、自定义DNSHost、whois信息)。
众所周知,互联网中的地址其实是IP地址,有IPV4和IPV6两种类型,但IP地址比较难记忆,因此发明了有特殊含义的域名方便用户使用。下图为域名的结构,每个域名都是有根域,如其实应该是,其中域名末尾的点就是根域名,很多情况下根域名是可以省略掉的。在上述例子中,.com为顶级域名,volcengine.com是二级域名或主域名,是子域名或分域名。值得注意的是,顶级域名可以由多个标签组成,例如.com.cn。
域名注册与建站
域名最常见的作用是为网站提供访问地址,例如和volcengine.com。如果想创建自己的网站,并希望用户可以使用和wenteng.site这两个域名访问你的网站,则需要将这两个域名指向你的网站服务。
假设你已经完成了页面代码编写和服务部署(页面资源已使用Vercel或GitHub Pages部署,并通过dig域名获取了服务对应的负载均衡服务器VIP),接下来需要知道如何获取域名并将域名指向你的服务。本小节将帮助你解决这个问题。
1.1 注册二级域名
首先,要创建自己的网站,第一步是获取和wenteng.site这两个域名。通过使用火山引擎域名服务/域名注册搜索,你会发现可以找到wenteng.site,但是却无法找到。这是因为只有二级域名是可以注册的,而子域名则是基于二级域名的配置,而非注册出来的资源。
因此,如果想拥有这两个域名,你只需要在域名注册平台注册wenteng.site这个二级域名,之后在DNS解析平台中配置两个主机记录,分别为空(通常使用@符号)和www的子域名即可。
火山引擎域名注册的主流程
总的来说,域名的注册和线上购物很类似,询价->加购->付款。不同点在于,通过中国内地的域名代理商注册域名之前,需要先添加持有者信息模板用于实名认证,实名认证成功后才可以绑定模板购买域名(国外不需要这一环节)。
域名下单后,国内的域名注册商会对用户购买的域名进行命名审核,检查域名是否包含敏感词汇。命名审核通过,该域名在国内国外均可以使用;命名审核失败,.cn等CNNIC管理的后缀域名会注册失败,其他后缀域名会被保留,但将处于serverhold状态,在国内无法使用。
用户购买域名后,需要关注下域名的状态,防止域名过期未续费导致域名被其他人抢注。
域名的有效性状态说明
1.2 配置DNS解析
域名购买成功后,即拥有了域名这个资源,但是域名正常使用还需要在DNS管理平台(如云解析DNS)配置解析来实现域名到IP的映射。二级域名购买后,即拥有了该二级域名以及二级域名下子域名的DNS解析配置权限。
以上文两个域名为例,假设服务器IP为76.76.21.22,对于wenteng.site,需要添加一条主机记录为空(通常使用@符号),记录值为76.76.21.22的记录;对于,需要添加一条主机记录为www,记录值为76.76.21.22的记录。
配置完毕,当用户访问这两个域名时,DNS解析会将该域名解析为76.76.21.22,之后用户的访问流量就会到达这个IP的服务器。
因为本网站只是测试使用,不对外发布,服务器也在境外,因此无需备案和合规悬挂,在DNS解析配置完毕即可正常访问。感兴趣的读者可以分别点击 、wenteng.site这两个域名访问对应的网站。
1.3 网站备案
想要将域名解析至中国内地的服务器上对外提供服务,根据相关规定,需要进行域名ICP备案。此外,各网站在工信部进行ICP备案成功后,还需要进行公安联网备案。
ICP(Internet Content Provider )备案是由工信部管理要求,由接入商协助代申请。如果没有进行ICP备案,全网都无法访问网站。如果是在多家云厂商申请服务,就需要在每家厂商进行备案,彼此之间的备案和接入互相独立。需要注意的是,DNS不受备案与否的影响,因为配置解析不校验域名备案状态,可以随意配置。
公安备案是公安部对网站域名的管辖要求。自网络正式联通之日起三十日内,相关主体须到所在地的省、自治区、直辖区人民政府公安机关指定的受理机关办理备案手续。未公安备案不会影响流量的访问,但是如果网站被举报或相关人员发现网站对外可访问却没有备案,相关部门会对网站负责人进行处罚。
1.4 合规悬挂
ICP备案成功后,需要在ICP备案成功的网站底部悬挂工信部下发的ICP备案号,并生成链接指向工信部网站:
公安联网备案审核通过后,需要复制网站公安机关备案号和备案编号HTML代码,下载备案编号图标,并编辑网页源代码将公安联网备案信息放置在网页底部。
域名注册原理
下图为域名各级管理机构,ICANN为最顶层的域名管理机构,负责管理国内外所有域名,但是国内域名还需要受工信部和CNNIC的管理。通常来说,域名购买行为发生在域名注册商/代理商处,但是本质上域名的注册是在各注册局进行的。
域名注册商代理多个顶级域名,给用户提供基于顶级域名的二级域名注册服务。域名机构中最重要的是注册局,它直接负责顶级域名的管理。以.com域名对应的注册局为例,该注册局会负责.com顶级域名服务器的维护以及.com下的二级域名的资源管理。
域名本质上是IP的别名,域名到IP的映射是通过DNS解析实现的,以wenteng.site为例:
二级域名注册前后差异点在于二级域名对应的顶级域名服务器(此例中为.site对应的注册局维护的DNS服务器)处是否存在二级域名的NS记录(NS记录会指明下一跳需要查询的DNS服务器的地址)。因此可以推断,二级域名的注册本质上是在其对应的顶级域名服务器中为该二级域名插入NS记录。除了插入NS记录,域名注册时注册局还会管理该域名的资源信息,记录新注册的二级域名的注册商、域名持有人、注册时间等信息。
此外,域名是没有国内域名和国外域名之分的,注册一个域名可以全球使用。DNS是域名与IP的映射,IP有国内国外之分,域名是没有的,将域名解析到国外的IP就可以访问国外的服务,将域名解析到国内的IP就可以访问到国内的服务。虽然.cn之类的顶级域名是中国管理的,但是仍然可以将这些顶级域名下的域名解析到国外的服务。
域名管理
域名支持很多管理操作,如续费、赎回、修改联系人信息、开关更新锁、开关转移锁等,这些操作都不涉及太多技术问题,因此本文不再赘述。接下来主要介绍修改域名DNS服务器、域名转入转出、自定义DNSHost以及域名的Whois信息。
3.1 修改DNS服务器
上文提到,域名注册的过程本质上是在其对应的顶级域名服务器中为该二级域名插入NS记录的过程,NS记录指明这个二级域名的权威服务器。域名注册时,域名注册商/代理商会调用注册局的接口将二级域名的NS记录设置为默认的DNS服务器域名,如火山引擎域名服务会为新注册的域名设置DNS服务器为云解析DNS提供的权威服务器域名(ns1.volcdns.com……ns5.volcdns.com)。
当然用户也可以在域名注册商处自由修改域名的DNS服务器,比如将在其他云服务商注册的域名的DNS服务器改为火山云解析DNS服务器。修改域名DNS服务器,本质上改的依然是顶级DNS服务器处该域名的NS记录。
3.2 域名转入转出
如果想要把二级域名从一家域名注册商转入到另一家注册商,需要进行域名的转入转出操作,这个转入只是管理权的转入,注册局只需修改该域名的资源信息(域名的注册商信息)即可完成域名的转入转出。
当用户发起二级域名的转出操作时,注册局会给用户下发一个转移密码,之后用户将该密码提供给转入注册商发起域名的转入操作,火山引擎域名服务会将该密码提交给注册局核对,核对成功后注册局会更新该域名的注册商信息,域名转入成功。
域名转入虽然本质上只是二级域名资源信息的更新,但是根据注册局的规定,域名转入时需在原期限上续费1年,因此,域名转入时需要相应支付1年的域名续费费用。当前火山引擎域名服务有新用户转入活动,域名转入一元起(1元即可续费一年域名),感兴趣的同学可以点击文末「阅读原文」体验。
如果你转入域名后,希望通过云解析DNS管理二级域名及其子域名的解析记录,你可以先在云解析中配好相应域名的解析记录,之后在火山引擎域名服务中修改DNS服务器即可。
3.3 自定义 DNS Host
自定义 DNS Host 指的是搭建自己的权威 DNS 服务器,自己可以给自己的域名提供解析服务。搭建好 DNS 服务器后,只需要将域名的 DNS 服务器改为自建的 DNS 服务器的域名即可。搭建自己的 DNS 服务器并不复杂,购买一个云服务器并在该云服务器中安装 DNS 服务器软件就可以使其成为一个 DNS 服务器。拥有自己的 DNS 服务器,除了可以为公网域名提供解析,还可以结合自己搭建的 local DNS 一起实现私网 DNS。
DNS 服务器创建完毕,需要为 DNS 服务器分配至少一个子域名(如dns.example.com)用来作为 NS 记录值使用。子域名与 IP 的绑定需要在两处进行:
DNS服务器的使用可以参考这个例子,用户在云服务商 DNS 管理平台配置了子域名a.b.com的解析,现在想使用自己搭建的DNS服务器dns.example.com为其子域名提供解析,那么用户就需要在云服务商 DNS 管理平台将a.b.com的解析记录改为 NS 记录,值为dns.example.com。此外,用户还需要在自己搭建的DNS服务器中添加a.b.com的解析记录为目标服务器的Ip地址。
第二处绑定很好理解,当用户需要用你的DNS服务器为其个别子域名(如果二级域名下所有子域名都改用其他DNS服务器,可以直接在二级域名管理处修改DNS服务器)提供解析时,需要更改其子域名的解析记录为NS记录,值为你的DNS服务器的域名,但是这个域名(如dns.example.com)是需要再进行DNS解析得到IP的,因此,为了保证你的DNS服务器可以为子域名提供解析,你需要在DNS管理平台为dns.example.com添加解析记录。
第一处绑定就有些复杂了,如果对 DNS 解析和胶水记录足够了解,其实可以推断出这一步自定义 DNSHost 的过程其实就是添加胶水记录的过程。胶水记录其实是一个 IP ,即 NS 记录值所对应的iP。顶级域名服务器返回二级域名记录 NS 记录时,通常会在返回报文的 additional section字段中携带 NS 记录域名对应的 IP,这个 IP 就是胶水记录。
很明显,胶水记录的存在可以省去再解析 NS 记录获得DNS服务器IP的过程,也可以回答第一台权威 DNS 服务器的域名是被谁解析的问题。当用户在使用dns.example.com注册二级域名或修改二级域名的 DNS 服务器为dns.example.com时,dns.example.com如果进行过自定义DNS服务器操作,当该二级域名解析到顶级域名服务器这一节点时,顶级域名服务器就会在返回NS记录的同时携带胶水记录(你的 DNS 服务器的 IP)。
3.4 Whois 信息
您可以通过 WHOIS 查询获取已注册域名的持有者信息、注册时间、域名状态等信息,每个域名至少有一个状态码,但也可以有多个,如 active(OK)表示域名正常,serverHold 表示注册局设置暂停解析,可以点击查看更多状态码。
从技术实现角度来说,whois信息的获取来源有两个:ICANN或注册局
两种方式均有利弊,ICANN的接口较慢,而且容易封禁,但是对接方便;使用注册局的接口速度快,准确性高,但是需要对接所有的注册局。
火山引擎域名服务提供whois查询功能,可以(通过火山引擎 whois)查询wenteng.site的whois信息,如果心仪的域名已经被人抢注了,还可以通过火山引擎域名服务发起委托购买。
基本概念
ICANN(The Internet Corporation for Assigned Names and Numbers):互联网名称与数字地址分配机构,负责互联网协议(IP)地址的空间分配、协议标识符的指派、通用顶级域名(gTLD)以及国家和地区顶级域名(ccTLD)系统的管理、以及根服务器系统的管理。
注册局:一个或多个顶级域名对应一个注册局,注册局负责管理和维护顶级域名。
工信部:中国的域名既要受ICAMN执行规则的限制,也要遵循工信部的规定(比如ICP备案)。
CNNIC(China Internet Network Information Center):中国互联网络信息中心,CNNIC是我国域名注册管理机构和域名根服务器运行机构。主要有两个职责:1. 注册局,负责运行和管理 .cn以及其他中文顶级域名。2. 域名根服务器运行机构。serverHold是2009年12月14日以后由CNNIC对CN域名新增加的一种域名状态,主要原因就是域名没有备案。域名在这个状态下,所有解析都无法生效,要取消这个状态,只有通过注册商,向CNNIC提交该域名的备案号,CNNIC会在三个工作日内审核并取消该状态。
推荐活动