查看原文
其他

Internet 之地址结构

计算机与网络安全 计算机与网络安全 2022-06-01

一次性付费进群,长期免费索取教程,没有付费教程。

进微信群回复公众号:微信群;QQ群:460500587

 教程列表 见微信公众号底部菜单 |  本文底部有推荐书籍 

微信公众号:计算机与网络安全

ID:Computer-network


随着个人计算机的普及和网络技术的迅猛发展,Internet已作为21世纪人类的一种新的生活方式而深入寻常百姓家。谈到Internet,就不得不提IP地址,因为无论是从学习还是使用Internet的角度来看,IP地址都是一个十分重要的概念,Internet的许多服务和特点都是通过IP地址体现出来的。


1、IP地址概述


在全球范围内,每个家庭都有一个地址,而每个地址的结构是由国家、省、市、区、街道、门牌号这样的层次结构组成的,因此每个家庭地址是全球唯一的。有了这个唯一的家庭住址,信件的投递才能够正常进行,不会发生冲突。同理,覆盖全球的Internet主机组成了一个大家庭,为了实现Internet上不同主机之间的通信,除使用相同的通信协议——TCP/IP以外,每台主机都必须有一个不与其他主机重复的地址,这个地址就是Internet地址,相当于通信时每台主机的名字。Internet地址包括IP地址和域名地址,它们是Internet地址的两种表示方式。


所谓IP地址,就是给每个连接在Internet上的主机分配一个在全世界范围内唯一的32位二进制数,通常采用更直观的、以圆点“.”分隔的4个十进制数表示,每一个数对应于8个二进制数,如某一台主机的IP地址为128.10.4.8。IP地址的这种结构使每一个网络用户都可以很方便地在Internet上寻址。


2、IP地址的组成与分类


(1)IP地址的组成


从逻辑上讲,在Internet中,每个IP地址都由网络号和主机号两部分组成,如图1所示。位于同一物理子网的所有主机和网络设备(如服务器路由器、工作站等)的网络号是相同的,而通过路由器互连的两个网络一般被认为是两个不同的物理网络。对于不同物理网络上的主机和网络设备而言,其网络号是不同的。网络号在Internet中是唯一的。

图1  IP地址的结构


主机号是用来区别同一物理子网中不同的主机和网络设备的,在同一物理子网中,必须给出每一台主机和网络设备的唯一主机号,以区别于其他主机


在Internet中,网络号和主机号的唯一性决定了每台主机和网络设备的IP地址的唯一性。在Internet中根据IP地址寻找主机时,首先根据网络号找到主机所在的物理网络,在同一物理网络内部,主机的寻找是网络内部的事情,主机间的数据交换则是根据网络内部的物理地址来完成的。因此,IP地址的定义方式是比较合理的,对于Internet上不同网络间的数据交换非常有利。


(2)IP地址的表示方法


一个IP地址共有32位二进制数,即由4字节组成,平均分为4段,每段8位二进制数(1字节)。为了简化记忆,用户实际使用IP地址时,几乎都将组成IP地址的二进制数记为4个十进制数表示,每个十进制数的取值范围是0~255,每相邻两字节的对应十进制数间用“.”分隔。IP地址的这种表示法称为“点分十进制表示法”,显然比全是1、0容易记忆。


下面是一个将二进制IP地址用点分十进制来表示的例子。


二进制地址格式:11001010 01100011 01100000 01001100


十进制地址格式:204.99.96.76


计算机的网络协议软件很容易将用户提供的十进制地址格式转换为对应的二进制IP地址,再供网络互连设备识别。


(3)IP地址的分类


IP地址的长度确定后,其中网络号的长度将决定Internet中能包含多少个网络,主机号的长度将决定每个网络能容纳多少台主机。根据网络的规模大小,IP地址一共可分为5类:A类、B类、C类、D类和E类。其中,A、B和C类地址是基本的Internet地址,是用户使用的地址,为主类地址;D类和E类为次类地址。A、B、C类 IP地址的表示如图2所示。

图2  IP地址的分类


A类地址的前一字节表示网络号,且最前端一个二进制数固定是“0”。因此,其网络号的实际长度为7位,主机号的长度为24位,表示的地址范围是1.0.0.0~126.255.255.255。A类地址允许有27−2=126个网络(网络号的0和127保留,用于特殊目的),每个网络有224−2=16 777 214个主机。A类IP地址主要分配给具有大量主机而局域网络数量较少的大型网络。


B类地址的前两字节表示网络号,且最前端的两个二进制数固定是“10”。因此,其网络号的实际长度为14位,主机号的长度为16位,表示的地址范围是128.0.0.0~191.255.255.255。B类地址允许有214=16 384个网络,每个网络有216−2=65 534个主机。B类IP地址适用于中等规模的网络,一般用于一些国际性大公司和政府机构等。


C类地址的前3字节表示网络号,且最前端的3个二进制数是“110”。因此,其网络号的实际长度为21 位,主机号的长度为 8 位,表示的地址范围是 192.0.0.0~223.255.255.255。C 类地址允许有221=2 097 152个网络,每个网络有28−2=254个主机。C类IP地址的结构适用于小型的网络,如一般的校园网、一些小公司的网络或研究机构的网络等。


D类IP地址不标识网络,一般用于其他特殊用途,如供特殊协议向选定的节点发送信息时使用,又被称为广播地址,表示的地址范围是224.0.0.0~239.255.255.255。


E类IP地址尚未使用,暂时保留将来使用,表示的地址范围是240.0.0.0~247.255.255.255。


从IP地址的分类方法来看,A类地址的数量最少,共可分配126个网络,每个网络中最多有1 700万台主机;B类地址共可分配16 000多个网络,每个网络最多有65 000台主机;C类地址最多,共可分配200多万个网络,每个网络最多有254台主机


值得一提的是,5类地址是完全平级的,不存在任何从属关系。但由于A类IP地址的网络号数目有限,因此现在仅能够申请的是B类或C类两种。当某个企业或学校申请IP地址时,实际上申请到的只是一个网络号,而主机号则由该单位自行确定分配,只要主机号不重复即可。


近年来,随着Internet用户数目的急剧增长,可供分配的IP地址数目也日益减少。现在B类地址已基本分配完,只有C类地址尚可分配,原有32位长度的IP地址的使用已经显得相当紧张,而新的IPv6方案的128位长度的IP地址将会缓解目前IP地址的紧张状况。

3、特殊类型的IP地址


除了上面5种类型的IP地址外,还有以下几种特殊类型的IP地址。


多点广播地址。凡IP地址中的第一字节以“1110”开始的地址都称为多点广播地址。因此,第一字节大于223而小于240的任何一个IP地址都是多点广播地址。


“0”地址。网络号的每一位全为“0”的IP地址称为“0”地址。网络号全为“0”的网络被称为本地子网,当主机想跟本地子网内的另一主机通信时,可使用“0”地址。


全“0”地址。IP地址中的每一字节都为“0”的地址(0.0.0.0),对应于当前主机


有限广播地址。IP地址中的每一字节都为“1”的IP地址(255.255.255.255)称为当前子网的广播地址。当不知道网络地址时,可以通过有限广播地址向本地子网的所有主机进行广播。


环回地址。IP地址一般不能以十进制数“127”作为开头。以“127”开头的地址,如127.0.0.1,通常用于网络软件测试以及本地主机进程间的通信。


4、IP地址和物理地址的转换


TCP/IP的物理层连接的都是具体的物理网络,物理网络都有确切的物理地址。IP地址和物理地址之间是有区别的,IP地址只是在网络层中使用的地址,其长度为32位。物理地址是指在一个网络中对其内部的一台计算机进行寻址使用的地址。物理地址工作在网络最底层,其长度为48位。通常将物理地址固化在网卡的ROM芯片中,因此有时也称之为“硬件地址”或“MAC地址”。


IP地址通常将物理地址隐藏起来,使Internet表现出统一的地址格式。但在实际通信时,物理网络使用的依然是物理地址,因为IP地址是不能被物理网络识别的。对于以太网而言,当IP数据报通过以太网发送时,以太网设备并不识别32位IP地址,而是以48位的MAC地址传输以太网数据。因此,在两者之间要建立映射关系,地址之间的这种映射称为地址解析。硬件编址方案不同,地址解析的算法也是不同的。例如,将IP地址解析为以太网地址的方案和将IP地址解析为令牌环网地址的方法是不同的,因为以太网编址方案与令牌环网编址方案不同。通常,Internet中使用较多的是查表法,即在计算机中存放一个从IP地址到物理地址的映射表,并经常动态更新该表,通过查表找到对应的物理地址。


地址解析工作由ARP来完成,如图3所示。ARP是一个动态协议,之所以用“动态”,是因为地址解析这个过程是自动完成的,一般用户不必关心。网络中的每台主机都有一个ARP缓存,其中装有IP地址到物理地址的映射表。ARP定义了两种基本信息:一种是请求信息,其中包含了一个IP地址和对应物理地址的请求;另一种是应答信息,其中包含了发来的IP地址和相应的物理地址。

图3  ARP的功能


下面通过一个具体的例子来讲述ARP的具体工作过程。


假设在一个局域网中,如果主机A要向另一台主机E发送IP数据报,如图4所示,具体的地址解析过程如下。

图4  ARP地址解析过程


1)主机A在本地ARP缓存中查找是否有主机E的IP地址。如果有,就找出其对应的物理地址,然后写入数据帧中发送到此物理地址。


2)如果找不到主机E的IP地址,主机A就将一个包含另一台主机E的IP地址的ARP请求消息写入一个数据帧中,以广播的形式发送给网上的所有主机


3)每台主机收到该请求后都检测其中的IP地址,相匹配的目标主机E会向请求者发出一个ARP响应数据包,其中写入自己的物理地址;不匹配的其他主机则丢弃收到的请求,不回复任何消息。


4)主机A在收到主机E的ARP应答消息后,向ARP缓存中写入主机E的IP地址和物理地址的映射关系,以备后用。


在一个网络中如果经常会发生添加计算机、撤掉计算机以及更换网卡的情况,都会使物理地址发生改变,通过ARP可以很好地建立并动态刷新映射表,以保证地址转换的正确性。在地址转换时,有时还可能用到另一个协议——反向地址解析协议(Reverse Address Resolution Protocol,RARP)。RARP的作用和ARP刚好相反,是在只知道物理地址的情况下解析出对应的IP地址。


微信公众号:计算机与网络安全

ID:Computer-network


【推荐书籍】

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存