Chinaunix首页 | 论坛 | 博客
  • 博客访问: 472121
  • 博文数量: 41
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 140
  • 用 户 组: 普通用户
  • 注册时间: 2015-02-05 14:08
个人简介

c++ programmer

文章分类

全部博文(41)

文章存档

2020年(2)

2018年(3)

2017年(23)

2016年(13)

我的朋友

分类: C/C++

2016-12-27 10:08:59

一、IP分类


点分十进制数表示的IPv4 地址分成几类,以适应大型、中型、小型的网络。这些类的不同之处在于用于表示网络的位数与用于表示主机的位数之间的差别。IP地址分成五类,用字母表示:
A 类地址
B 类地址
C 类地址
D 类地址
E 类地址
每一个IP地址包括两部分:网络地址和主机地址,上面五类地址对所支持的网络数和主机数有不同的组合。

1. A 类地址


   一个A 类IP地址仅使用第一个8位位组表示网络地址。剩下的3个8位位组表示主机地址。A类地址的第一个位总为0,这一点在数学上限制了A类地址的范围小于 127,127是64+32+16+8+4+2+1的和。最左边位表示128,在这里空缺。因此仅有127个可能的A类网络。A类地址后面的24位(3个点-十进制数)表示可能的主机地址,A类网络地址的范围从1.0.0.0到126.0.0.0。注意只有第一个8位位组表示网络地址,剩余的3个8位位组用于表示第一个8位位组所表示网络中惟一的主机地址,当用于描述网络时这些位置为0。注意技术上讲,127.0.0.0 也是一个A类地址,但是它已被保留作闭环(look back )测试之用而不能分配给一个网络。每一个A类地址能支持16777214个不同的主机地址,这个数是由2的24次方再减去2得到的。减2是必要的,因为 IP把全0保留为表示网络而全1表示网络内的广播地址。其中10.0.0.0 和10.255.255.255保留。

2. B 类地址


   设计B类地址的目的是支持中到大型的网络。B类网络地址范围从128.1.0.0到191.254.0.0。B 类地址蕴含的数学逻辑是相当简单的。一个B类IP地址使用两个8位位组表示网络号,另外两个8位位组表示主机号。B类地址的第1个8位位组的前两位总置为 10,剩下的6位既可以是0也可以是1,这样就限制其范围小于等于191,由128+32+16+8+4+2+1得到。最后的16位( 2个8位位组)标识可能的主机地址。每一个B类地址能支持64534 个惟一的主机地址,这个数由2的16次方减2得到。B类网络仅有16382个,其中172.16.0.0和172.31.255.255保留。

3. C 类地址


   C类地址用于支持大量的小型网络。这类地址可以认为与A类地址正好相反。A类地址使用第一个8位位组表示网络号,剩下的3个表示主机号,而C类地址使用三个8位位组表示网络地址,仅用一个8位位组表示主机号。C类地址的前3位数为110,前两位和为192(128+64),这形成了C类地址空间的下界。第三位等于十进制数32,这一位为0限制了地址空间的上界。不能使用第三位限制了此8位位组的最大值为255-32等于223。因此C类网络地址范围从 192.0.1.0 至223.255.254.0。最后一个8位位组用于主机寻址。每一个C类地址理论上可支持最大256个主机地址(0~255),但是仅有254个可用,因为0和255不是有效的主机地址。可以有2097150个不同的C类网络地址,其中192.168.0.0和192.168.255.255保留。  
   

4. D 类地址


   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 类地址


   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、127.0.0.0


   127是一个保留地址,该地址是指电脑本身,主要作用是预留下作为测试使用,用于网络软件测试以及本地机进程间通 信。在Windows系统下,该地址还有一个别名叫“localhost”,无论是哪个程序,一旦使用该地址发送数据,协议软件会立即返回,不进行任何网 络传输,除非出错,包含该网络号的分组是不能够出现在任何网络上的。

2、10.x.x.x、172.16.x.x~172.31.x.x、192.168.x.x


   私有地址,这些地址被大量用于企业内部网络中。一些宽带路由器,也往往使用192.168.1.1作为缺省地址。私有网络由于不与外部互连,因而可能使 用随意的IP地址。保留这样的地址供其使用是为了避免以后接入公网时引起地址混乱。使用私有地址的私有网络在接入Internet时,要使用地址翻译 (nat),将私有地址翻译成公用合法地址。在Internet上,这类地址是不能出现的。

3、0.0.0.0


   严格意义上来 说,0.0.0.0已经不是真正意义上的IP地址了。它表示的是这样一个集合,所有不清楚的主机和目的网络。这里的不清楚是指在本机的路由表里没有特定条 目指明如何到达。对本机来说,它就是一个收容所,所有不认识的三无人员,一律送进去。如果你在网络设置中设置了缺省网关,那么Windows系统就会自动 产生一个目地址为0.0.0.0的缺省路由。
   若IP地址全为0,也就是0.0.0.0,则这个IP地址在IP数据报中只能用作源IP地址,这发生在当设备启动时但又不知道自己的IP地址情况下。在使 用DHCP分配IP地址的网络环境中,这样的地址是很常见的。用户主机为了获得一个可用的IP地址,就给DHCP服务器发送IP分组,并用这样的地址作为 源地址,目的地址为255.255.255.255(因为主机这时还不知道DHCP服务器的IP地址)。

4、255.255.255.255


   受限制的广播地址,对本机来说,这个地址指本网段内(同一 个广播域)的所有主机,该地址用于主机配置过程中IP数据包的目的地址,这时主机可能还不知道它所在网络的网络掩码,甚至连它的IP地址也还不知道。在任 何情况下,路由器都会禁止转发目的地址为受限的广播地址的数据包,这样的数据包仅会出现在本地网络中。

5、224.0.0.1


   组播地址,注意它和广播的区别。从224.0.0.0到239.255.255.255都是这样的地址。224.0.0.1特指所有主 机,224.0.0.2特指所有路由器。这样的地址多用于一些特定的程序以及多媒体程序。如果你的主机开启了IRDP(Internet路由发现协议,使 用组播功能)功能,那么你的主机路由表中应该有这样一条路由。

6、169.254.*.*


   如果你的主机使用了DHCP功能自动获 得一个IP地址,那么当你的DHCP服务器发生故障或响应时间太长而超出系统规定的一个时间,Windows系统会为你分配这样一个地址。如果你发现你的 主机IP地址是个诸如此类的地址,很不幸,十有八九是你的网络不能正常运行了。

7、直接广播地址


   一个网络中的最后一个地址为直接广播地址,也就是HostID全为1的地址。主机使用这种地址把一个IP数据报发送到本地网段的所有设备上,路由器会转发这种数据报到特定网络上的所有主机。
注意:这个地址在IP数据报中只能作为目的地址。另外,直接广播地址使一个网段中可分配给设备的地址数减少了1个。

8、NetID为0的IP地址


   当某个主机向同一网段上的其他主机发送报文时就可以使用这样的地址,分组也不会被路由器转发。比如12.12.12.0/24这个网络中的一台主机12.12.12.2/24在与同一网络中的另一台主机12.12.12.8/24通信时,目的地址可以是0.0.0.8。





@转载自http://tanghuimin0713.blog.51cto.com/4159848/791906
阅读(1717) | 评论(0) | 转发(0) |
0

上一篇:winsock模型

下一篇:子网掩码和子网划分

给主人留下些什么吧!~~