IP协议详解之一:IP地址知识

I P是TCP/IP协议族中最为核心的协议。所有的TCP、UDP、ICMP及IGMP数据都以I P数据报格式传输。I P提供不可靠、无连接的数据报传送服务。
 
不可靠(unreliable的意思是它不能保证 I P数据报能成功地到达目的地。 I P仅提供最好的传输服务。如果发生某种错误时,如某个路由器暂时用完了缓冲区, I P有一个简单的错误处理算法:丢弃该数据报,然后发送 I C M P消息报给信源端。任何要求的可靠性必须由上层来提供(如T C P) 。
无连接(connectionless这个术语的意思是I P并不维护任何关于后续数据报的状态信息。每个数据报的处理是相互独立的。这也说明, I P数据报可以不按发送顺序接收。如果一信源向相同的信宿发送两个连续的数据报(先是 A,然后是B) ,每个数据报都是独立地进行路由选择,可能选择不同的路线,因此B可能在A到达之前先到达。
 
IP数据报格式不介绍,可以在网上查阅相关资料。
 

一、IP地址的概念

 

我们知道因特网是全世界范围内的计算机联为一体而构成的通信网络的总称。联在某个网络上的两台计算机之间在相互通信时,在它们所传送的数据包里都会含有某些附加信息,这些附加信息就是发送数据的计算机的地址和接受数据的计算机的地址。象这样,人们为了通信的方便给每一台计算机都事先分配一个类似我们日常生活中的电话号码一样的标识地址,该标识地址就是我们今天所要介绍的IP地址。根据TCP/IP协议规定,IP地址是由32位二进制数组成,而且在INTERNET范围内是唯一的。例如,某台联在因特网上的计算机的IP地址为:
11010010 01001001 10001100 00000010
很明显,这些数字对于人来说不太好记忆。人们为了方便记忆,就将组成计算机的IP地址的32位二进制分成四段,每段8位,中间用小数点隔开,然后将每八位二进制转换成十进制数,这样上述计算机的IP地址就变成了:210.73.140.2。这是点分十进制表示法。
 

二、IP地址的分类

 

我们说过因特网是把全世界的无数个网络连接起来的一个庞大的网间网,每个网络中的计算机通过其自身的IP地址而被唯一标识的,据此我们也可以设想,在INTERNET上这个庞大的网间网中,每个网络也有自己的标识符。这与我们日常生活中的电话号码很相像,例如有一个电话号码为0515163,这个号码中的前四位表示该电话是属于哪个地区的,后面的数字表示该地区的某个电话号码。与上面的例子类似,我们把计算机的IP地址也分成两部分,分别为网络标识和主机标识。同一个物理网络上的所有主机都用同一个网络标识,网络上的一个主机(包括网络上工作站、服务器和路由器等)都有一个主机标识与其对应?IP地址的4个字节划分为2个部分,一部分用以标明具体的网络段,即网络标识;另一部分用以标明具体的节点,即主机标识,也就是说某个网络中的特定的计算机号码。例如,盐城市信息网络中心的服务器的IP地址为210.73.140.2,对于该IP地址,我们可以把它分成网络标识和主机标识两部分,这样上述的IP地址就可以写成:
网络标识:210.73.140.0
主机标识:     2
合起来写:210.73.140.2
由于网络中包含的计算机有可能不一样多,有的网络可能含有较多的计算机,也有的网络包含较少的计算机,于是人们按照网络规模的大小,把32位地址信息设成五种定位的划分方式,这五种划分方法分别对应于A类、B类、C类、D类、E类IP地址。
IP协议详解之一:IP地址知识
注意:IP协议把主机地址全0保留为表示当前网络而全1表示该网络内的广播地址。因而每个网络的主机数目都要在理论值的基础上减去2

 

1.A类IP地址(0.0.0.0到127.255.255.255)

 

一个A类IP地址是指,在IP地址的四段号码中,第一段号码为网络号码,剩下的三段号码为本地计算机的号码。如果用二进制表示IP地址的话,A类IP地址就由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”。A类IP地址中网络的标识长度为7位,主机标识的长度为24位,A类网络地址数量较少,可以用于主机数达1600多万台的大型网络
 
理论上讲,A类网络数量为:27=128个。然而网络号为0(十进制)的IP有特殊用途,见特殊的IP地址;网络号为127IP被用作回环测试;网络号为10IP为私有IPA类局域网中使用。因此,InternetA类网络可用数量为:128-3=125个网段;如果包括局域网中的10,一共126个网段。
理论上讲,A类中,每个网络主机数量为:224 。然而,主机号全为0(即主机号为0.0.0)的IP表示该网络;主机号为全为255(即主机号为:255.255.255)的IP表示该网络内的广播地址。因而主机数量为:224 -2
注:以上特殊IP地址在后面会讲到。
 
2.B类IP地址(128.0.0.0到191.255.255.255)

 

一个B类IP地址是指,在IP地址的四段号码中,前两段号码为网络号码,剩下的两段号码为本地计算机的号码。如果用二进制表示IP地址的话,B类IP地址就由2字节的网络地址和2字节主机地址组成,网络地址的最高位必须是“10”。B类IP地址中网络的标识长度为14位,主机标识的长度为16位,B类网络地址适用于中等规模的网络,每个网络所能容纳的计算机数为6万多台。
 
3.C类IP地址(192.0.0.0到223.255.255.255)

 

一个C类IP地址是指,在IP地址的四段号码中,前三段号码为网络号码,剩下的一段号码为本地计算机的号码。如果用二进制表示IP地址的话,C类IP地址就由3字节的网络地址和1字节主机地址组成,网络地址的最高位必须是“110”。C类IP地址中网络的标识长度为21位,主机标识的长度为8位,C类网络地址数量较多,适用于小规模的局域网络,每个网络最多只能包含254台计算机。28 - 2
 
4. DIP地址(224.0.0.0到239. 255. 255.254)
 
D 类地址用于在IP网络中的组播( multicasting ,又称为多目广播)。D类地址的前4位恒为1110 ,预置前3位为1意味着D类地址开始于128+64+32等于224。第4位为0意味着D类地址的最大值为128+64+32+8+4+2+1为239,因此D类地址空间的范围从224.0.0.0到239. 255. 255.254。
        
5. E IP地址(240.0.0.0 至255.255.255.255)
 
E 类地址保留作研究之用。因此Internet上没有可用的E类地址。E类地址的前4位恒为1,因此有效的地址范围从240.0.0.0 至255.255.255.255。
 
总的来说,ip地址分类由第一个八位组的值来确定。任何一个0到127 间的网络地址均是一个A类地址。任何一个128到191间的网络地址是一个B类地址。任何一个192到223 间的网络地址是一个C类地址。任何一个第一个八位组在224到239 间的网络地址是一个组播地址即D类地址。E类保留。
 
三、私有和保留的IP地址
 
1、私有IP地址
 
根据用途和安全性级别的不同,IP地址还可以大致分为两类:公共地址和私有地址。公用地址在Internet中使用,可以在Internet中随意访问。
 
一个机构网络要连入Internet,必须申请公用IP地址。但是考虑到网络安全和内部实验等特殊情况,在IP地址中专门保留了三个区域作为私有地址,其地址范围如下: 
 
A类:10.0.0.0/8(子网掩码表示)      10.0.0.0-10.255.255.255 
B类:172.16.0.0/12                               172.16.0.0-172.31.255.255 
C类:192.168.0.0/16                             192.168.0.0-192.168.255.255 
 
使用保留地址的网络只能在内部进行通信,而不能与其他网络互连。因为本网络中的保留地址同样也可能被其它网络使用,如果进行网络互连,那么寻找路由时就会因为地址的不唯一而出现问题。但是这些使用保留地址的网络可以通过将本网络内的保留地址翻译转换(NAT)成公共地址的方式实现与外部网络的互连。这也是保证网络安全的重要方法之一。 
 
2、特殊情况的IP地址
 
有7个特殊的I P地址,如图所示。在这个图中,0表示所有的比特位全为0;- 1表示所有的比特位全为1;n e t i d(网络号)、s u b n e t i d(子网号)和h o s t i d(主机号)分别表示不为全0或全1的对应字段。子网号栏为空表示该地址没有进行子网划分。
 IP协议详解之一:IP地址知识
我们把这个表分成三个部分。表的头两项是特殊的源地址,中间项是特殊的环回地址,
最后四项是广播地址。
表中的头两项,网络号为0,如主机使用BOOTP协议确定本机I P地址时只能作为初始化过程中的源地址出现。



     本文转自polaris1119 51CTO博客,原文链接:http://blog.51cto.com/polaris/354312,如需转载请自行联系原作者


上一篇:用python自带的tkinter做游戏(二)—— 俄罗斯方块 篇


下一篇:【Linux】文件特殊权限 SUID/SGID/Sticky Bit