-- 作者 谢恩铭 转载请注明出处


《Web探索之旅》全系列

第三部分第二课:IP地址和域名


上一课 Web探索之旅 | 第三部分第一课:服务器 中,我们说了在Web之中,全球各地有无数台机器,有些充当客户机,有些作为服务器。

那么这些机器如何找到和辨认彼此呢?难道不会“只是因为在人群中多看了你一眼,再也没能想起你容颜”吗?

如果我用我的浏览器上网,我怎么知道哪个服务器向我发送此网站呢?

为了解决这个难题,IT科学家们使用了一个叫做IP地址的东西(东西好像有点太难听了,IP它根本就不是个东西好吗)。

IP是Internet Protocol的简称,英语意为“互联网协议”。

IP地址就是用来表示每一台连接Web的机器的。而且是唯一标识(当然我们在【TCP/IP探索之旅】中会讲到不同类别的IP地址,有些是可以重复的,牵涉到局域网,广域网,公有地址和私有地址等概念,在此不深究)。

我们暂时只要了解:大范围来讲,全球每台电脑都有一个独一无二的IP地址,就好像是它的唯一铭牌。我们可以把“电脑”比作“电话”,那么“IP地址”就相当于“电话号码”。

IPv4和IPv6


IPv4和IPv6是IP地址的不同版本,v4就是第四版(v是英语version的首字母,version意为“版本”),那么v6就是第六版。

IPv4的地址长度为32位(共有2^32(2的32次方)个IP地址),分为4段,每段8位,用十进制数字表示,每段数字范围为0~255,段与段之间用句点隔开。例如159.226.13.1。

IPv6的地址长度为128位(共有2^128(2的128次方)个IP地址),分为8段,每段16位,用十进制数字表示,每段数字范围为0~65535,段与段之间用句点隔开。如果每个16位用16进制表示,那么例如1080:0000:0000:0000:0008:0800:200C:417A。

互联网当前使用的主要是基于IPv4协议的32位地址,地址总容量近43亿个。而IPv6地址采用128位标识,数量为2的128次方,相当于IPv4地址空间的4次幂。

有人曾形象地比喻:“IPv6可以让地球上每一粒沙子都拥有一个IP地址。”

实际上,并不急于推广IPv6,只需在现有的IPv4基础上将32位扩展8位到40位,即可解决IPv4地址不够的问题。这样一来可用地址数就扩大了256倍。

我们的课程中还是以IPv4的地址值来举例。

例如我们有以下IP地址:

难道我们每次上网,都要在地址栏里输入这样的数字才能找到我要的网页吗?这样的话太累了,臣妾做不到啊。

那怎么办呢?于是域名应运而生。

域名


因为直接记每个IP地址太难,所以人们想到了用人类易于记忆的名字来代替数字。比如,上面例子中的 205.89.177.26,其实是曾经Google首页的IP地址。所以我们就用一个域名(domain name)来代替:google.com

但是我们的服务器其实只认得数字形式的IP地址。所以我们需要一个“中间人”,将google.com这样的域名先解析成205.89.177.26,然后再找到对应的网页。

这个中间人就是DNS,Domain Name System(域名系统),是Internet的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。

有了DNS,我们就可以轻松地在地址栏输入 google.com,然后经过DNS解析,变为对应的IP地址,再由服务器读取。

DNS是由域名解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。

总结


  1. IP地址使我们可以找到地球上每台联网的电脑。

  2. 记住域名比IP地址方便,而从域名到IP地址的解析是通过DNS。

下回预告


Web探索之旅 | 第三部分第三课:协议


我是 谢恩铭,软件工程师,慕课网精英讲师 Oscar 老师,终生学习者。
热爱生活,喜欢游泳,略懂烹饪。
人生格言:「向着标杆直跑」