一、一个疑问在指出这个问题之前,首先我们要清楚以下几点:互联网上的所有数据都是存储在主机(服务器)上;互联网中的所有主机都拥有唯一的IP地址;互联网中任意两台主机通信都是通过IP地址来实现。那么了解上述内容之后,我们以上网为例,为大家说明这个疑问是什么!
1.世纪的每个人应该都熟悉网上冲浪的过程,我们上网的实质就是获取网站对应主机上的数据并在用户主机上进行展示(浏览器上),那么我们就该怀疑一个问题:互联网中的任意两台主机通信是依靠IP地址进行的,而我们上网只是输入了网址,并不是IP地址,怎么就能找到对方主机并获取它的数据呢?
一个疑问因此,势必存在某种机制,将网址解析成为了IP地址,再通过IP地址进行通信!
二、网址
1.网址是什么?
网址,也叫做域名,又称URL,是互联网用户用来标识主机的名字,该名字具有唯一性、层次性,字面意义可以表示主机的账号、功能、性质、所属的地区或组织,便于所有互联网用户记忆与使用!
URL,即Uniform Resource Locator,统一资源定位符,用于指明互联网主机的服务器及具体的网页位置,URL的构成策略与示例如下:
URL构成与示例特点:
- 网址命名遵循互联网域名规则,且易于管理,包括分配、确认、回收,同时与主机IP地址进行绑定,在用户访问域名时能够高效的将网址映射到IP地址(高效由域名服务器保证,详见后文)。
网址的出现解决了什么问题?
网址/域名/URL的出现解决了以下两个问题:
- 问题一:IP地址是互联网中所有主机的统一寻址方式,使用IP地址能够直接访问互联网上主机数据、资源,但由于IP地址只是一串数据,不具有实际意义,导致所有互联网用户记忆起来十分困难。
- 问题二:在Internet架构中,几乎所有的应用层软件都不是通过IP地址来访问互联网中的主机资源,而是要求用户输入具有一定意义的主机名字来访问对应主机的。
网址的结构组成上面提到的主机名称,也就是网址/域名的命名遵循了一定规则,这个规则便是由互联网中的“名字管理机构”来制定的,即域名系统DNS。这里先介绍下网址的组成:互联网中的某台主机域名由其所属各级域名及其自身名字共同组成(即由子域名构成),级别从左到右依次增加,最右边为顶级域名,最左边为主机自己的名字,各级子域名使用“.”隔开,常见的格式如下:
主机名.机构名.网络名.顶级域名
中科大域名组成
下面将详细介绍上图提到的域名系统DNS,包括DNS诞生解决了什么问题,域名发展史,域名层级,部分顶层域名对象,域名服务器,域名解析过程与IP技术拓展!
三、DNS域名系统
1.DNS是什么?
DNS,英文全写为Domain Name System,中文意思为域名系统,是互联网中提供域名与IP地址互相映射的分布式数据库。
DNS发展史
DNS发展史:
DNS在诞生之前(ARPANET时期),互联网中的每台主机都是用一个文件来记录所有的主机名及其IP地址,这个文件就是hosts.txt(现在是hosts文件,无后缀)。所有主机都必须定期从相应站点来更新该文件,用于同步互联网中主机的新增、变更、消失。
hosts文件内容可以想象,随着互联网中的主机数量增加,hosts文件必将越来越大,在维护更新方面的难度更是激增,主机名更是频繁发生冲突,为了解决这个问题,1988年DNS域名系统问世。
DNS解决了什么问题
前文已经提到DNS域名系统是互联网中的主机域名管理系统,充当“管理员”的角色!
DS在诞生之前(ARPANET时期),互联网中的每台主机都是用一个文件来记录所有的主机名及其IP地址,这个文件就是hosts.txt(现在是hosts文件,无后缀),所有主机都必须定期从相应站点来更新该文件,用于同步互联网中主机的新增、变更、消失。
hosts文件内容可以想象,随着互联网中的主机数量增加,hosts文件必将越来越大,在维护更新方面的难度更是激增,主机名更是频繁发生冲突,为了解决这个问题,1988年DNS域名系统问世。
DNS解决了什么问题
前文已经提到DNS域名系统是互联网中的主机域名管理系统,充当“管理员”的角色!
DS在诞生之前(ARPANET时期),互联网中的每台主机都是用一个文件来记录所有的主机名及其IP地址,这个文件就是hosts.txt(现在是hosts文件,无后缀)。所有主机都必须定期从相应站点来更新该文件,用于同步互联网中主机的新增、变更、消失。
hosts文件内容可以想象,随着互联网中的主机数量增加,hosts文件必将越来越大,在维护更新方面的难度更是激增,主机名更是频繁发生冲突,为了解决这个问题,1988年DNS域名系统问世。
DNS的域名层次结构
DS是一个分层的树形结构,各层由域构成,域的意义如下:
- 域表示一个区域、一个范围
- 每个域可容纳大量主机
- 每个主机必有属于自己的域,却不一定有自己的域名地址
DS标准规定,单个域名长度一般在6个字符以内,最长不超过255个字符。DS标准规定,域名中的字符限26个字母(不分大小写)、数字、连字符“-”(不能作为子域名首字母与末尾字母)。域所在服务器称为域名服务器,主要用于将域名映射为IP地址(详见后文)。
DS的域名树由根域,顶级域,二级域及其子域构成,其结构图与示例如下:
域名结构
下面逐一介绍各级域:
-
根域:由互联网网络信息中心(InterNIC)负责管理,用点“.”表示,无名称,是域名系统中的最高级别域,标准域名结尾应包含根域“.”,但实际使用中该根域都是省略的,所以大家常见的网址末尾并没有“.”
-
顶级域(Top-Level Domains = TLD):隶属于根域,是仅次于根域的下一级域,由国家顶级域(ccTLD)与通用顶级域(gTLD)共同组成。
国家顶级域共有4个(即全球的国家与地区总数),而通用顶级域,也叫国际域名,其数量是随着因特网的发展在逐渐增加,理论会达到无穷多个。下表罗列出了常见的通用顶级域:
| 顶级域 | 说明 |
| ————– | ——————– |
| .com | 商业机构 |
| .net | 与商业相关的组织 |
| .org | 非营利组织 |
| .edu | 教育机构 |
-
二级域:正式给组织和个人使用的域名,一般称为“国际域名”。
下面是中科大二级域名的示例:
- www.ustc.edu.cn
- mail.ustc.edu.cn
域名服务器
DNS服务器是指保存有域名和对应IP地址及其它有关信息的数据库的服务器。由于域名与IP地址是一一对应的,一旦域名注册成功并且解析到了某台服务器的IP,那么无论这域名在哪个浏览器输入,都会被解析到该网页的地址。
DS域名解析是域名解析的关键环节,它将域名映射为请求资源的相应服务器IP地址,从而让DNS用户能够快速找到所需资源。通过域名解析,用户可以方便地访问互联网上的各种服务。
域名查询
域名查询是指通过DNS记录查询域名与IP地址之间的对应关系。以下几种方式可以用来进行域名查询:
- 浏览器直接输:在浏览器的URL地址栏输入域名即可。
- host命令查询:在Windows系统中,可以通过“运行”框输入cmd,然后以管理员身份打开命令提示符窗口,再使用ping命令查询域名对应的IP地址。
通过上述方法,我们可以快速获取到域名的对应IP地址,从而确保信息传输的准确性。