子网掩码之简述 与 IP使用中的CIDR无类别编址

子网掩码之简述


--------------------------------------------------------------------------------

什么是IP地址?
人们为了通信方便给每一台计算机都事先分配一个类似电话号码一样的标识地址,即IP地址。
根据TCP/IP协议,IP地址由32位二进制数组成,而且在INTERNET范围内是唯一的。
如:某IP地址为11000000 10101000 00001010 00000010
为了方便记忆,人们把32位的IP地址分成四段,每段8位,中间用小数点“.”隔开,然后再将每8位二进制换成十进制,即192.168.10.2

IP地址的分类
就像电话号码一样分为区号和具体号码一样,我们把IP地址分为两个部分:网络标识和主机标识。
网络标识
同一物理网络上的所有主机都用同一个网络标识,网络上每一个主机都有一个主机标识与其对应。
主机标识
即为某个网络中特定的计算机号码。
例:一个主机服务器的IP地址为192.168.10.2,其中
网络标识为192.168.10.0
主机标识为2

IP地址共占4个字节32位,其一部分为网络标识,另一部分为主机标识。由于网络中所包含的计算机数量可能不一样多,人们按照网络规模的大小把IP地址按3种方法来划分,分别是:
1,A类IP地址
  在IP地址的4段号码中,第1段为网络标识,其余3段为主机标识。也就是说:A类IP地址由1字节的网络标识和3字节的主机标识组成。
  网络地址的最高位必须是0,网络标识的长度为7位,主机标识的长度占24位。
  A类IP网络地址数量较多,适用于大型网络,可用主机数达1600万多台。
2,B类IP地址
  在IP地址的4段号码中,前2段为网络标识,后2段为主机标识。也就是说:B类IP地址由2字节的网络标识和2字节的主机标识组成。
  网络地址的最高位必须是10,网络标识的长度为14位,主机标识的长度为16位。
  B类IP网络地址适用于中等规模网络,可用主机数达6万多台。
3,C类IP地址
  在IP地址的4段号码中,前3段为网络标识,最后1段为主机标识。也就是说:C类IP地址由3字节的网络标识和1字节的主机标识组成。
  网络地址的最高位必须是110,网络标识的长度为21位,主机标识的长度为8位。
  C类IP网络地址数量较少,适用于小型局域网络,可用主机数最多254台。

另外,TCP/IP协议规定,凡IP地址中的第一个字节以11110开始的地址叫 多点广播地址 。因此,任何第一个字节大于223小于240的IP地址是多点广播地址;IP地址中凡是以11110的地址都将留着作为特殊用。

IP地址的寻址规则
1.网络寻址规则
A、网络地址必须唯一。
B、网络标识不能以数字127开头。在A类地址中,数字127保留给内部回送函数(127.1.1.1用于回路测试)。
C、网络标识的第一个字节不能为255。数字255作为广播地址。
D、网络标识的第一个字节不能为“0”,“0”表示该地址是本地主机,不能传送。
2.主机寻址规则
A、主机标识在同一网络内必须是唯一的。
B、主机标识的各个位不能都为“1”,如果所有位都为“1”,则该机地址是广播地址,而非主机的地址。
C、主机标识的各个位不能都为“0”,如果各个位都为“0”,则表示“只有这个网络”,而这个网络上没有任何主机。

子网掩码简述
子网掩码也是一个32位地址,其作用是:
用于屏蔽IP地址的一部分以区分网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
只有同在一个子网中的主机才能互相通讯联系,否则就要通过特殊手段了。

例1:设IP地址为192.168.10.2,子网掩码为255.255.255.240,那么子网掩码是怎样来区分网络标识和主机标识的呢。
答:
用“与”运算。将十进制转换成二进制进行与运算
 IP地址:11000000 10101000 00001010 00000010
子网掩码:11111111 11111111 11111111 11110000
AND运算:
--------------------------
     11000000 10101000 00001010 00000000
则可得其网络标识为192.168.10.0,主机标识为2。

例2:设设IP地址为192.168.10.5,子网掩码为255.255.255.240
用“与”运算。将十进制转换成二进制进行与运算
 IP地址:11000000 10101000 00001010 00000101
子网掩码:11111111 11111111 11111111 11110000
AND运算:
--------------------------
     11000000 10101000 00001010 00000000
则可得其网络标识为192.168.10.0,主机标识为5。

从以上两个例子可以得出,只要有一个IP地址和以上的子网掩码运算后得到192.168.10.0,那么这些IP地址就在同一个子网中。

如果比较熟悉二进制的朋友就会发现,由于掩码最后一段为11110000,所以,在前三段都一样的情况下,只要主机标识的前四位都为0,所得到的IP地址必在同一个子网中。而且也不难算出,在255.255.255.240这样一个子网掩码下,最多只有16台主机在同一子网中。
由此可得出,经常在局域网中见到的子网掩码255.255.255.0,最多也只能有255台主机在同一子网中。

VLSM(可变长掩码)
3类IP地址默认的子网掩码分别为255.0.0.0、255.255.0.0和255.255.255.0。但这难免会浪费一些IP地址。
就拿C类IP地址的默认掩码来说,可以有253台主机共在一个子网中(除去全为1和0的,见上IP地址的寻址规则)。
假设申请了一个C类IP地址:192.168.10.*,那么IP地址从192.168.10.1到192.168.10.254都在一个子网,假设现在只有13台主机,那么就会浪费240台主机了。
但如果有VLSM就不同了。上述例子中的255.255.255.240就是这一种,根据我们刚才的运算,它只会有14台可用主机(除去全为0和1的)。
在使用该子网掩码255.255.255.240时:
IP地址为192.168.10.1到192.168.10.15在同一子网中,其网络标识为192.168.10.0;
而IP地址为192.168.10.16或1923168.10.18就不在上面的子网中,其网络标识为192.168.10.16。

*以上转自 蓝色理想经典论坛http://www.blueidea.com/bbs



*本人补充 : AND与运算规则 1与1为1 1与0为0 0与1为0 0与0为0

       二进制与十进转换请参考汇编书籍等。。



*以下内容来自 思科网苑 http://www.academy.net.cn/cathedra/talkIP.htm

        重点内容在 CIDR无类别编址 呵呵。。


浅谈IP地址的使用
 颜 凯,中国教育和科研计算机网(CERNET)西南地区网络中心系统运行部主任,同时也是电子科技大学思科网络技术学院的资深讲师


  近几年来,计算机网络迅猛发展,基于IP协议的Internet已发展成为当今世界上规模最大,并拥有最多用户、最多资源的一个超大型计算机网络。IP协议也因此成为事实上的工业标准,IP网络也成为计算机网络的主流。

一、Internet 中的IP地址

  IP地址标识了IP网络中的一个通信实体,一台主机可以有多个IP地址。IP分组中的IP源/目的地址在网络传输过程中保持不变,因而总是由确定的源通信实体送往指定的目的通信实体。

  从网络的层次结构考虑,一个IP地址必须指明两点:
  属于哪个网络
  是这个网络中的哪台主机
  于是,IP地址的格式为:网络号、主机号。

IP地址的类型及其表示

  现在的IP网络使用32位地址,通常由点分十进制表示,如:202.112.14.1。它主要由两部分组成:一部分是用于标识所属网络的网络地址;另一部分是用于标识给定网络上的某个特定的主机的主机地址。

  为了给不同规模的网络提供必要的灵活性,IP的设计者将IP地址空间划分为几个不同的地址类别。
  地址分类如下表所示:
高位 网络 主机 类型
0 7位网络 24为主机 A类IP地址
10 14位网络 16位主机 B类IP地址
110 21位网络 8位主机 C类IP地址
1110 28位多点广播组标号  D类IP地址
1111 保留试验使用  E类IP地址

  网络编号是由Internet权力机构分配的,目的是为了保证网络地址的全球唯一性。主机地址是由各个网络的的系统管理员统一分配的。因此,网络地址的唯一性与网络内主机地址的唯一性,就确保了IP地址的全球唯一性。


有类地址的局限性

  最初的Internet设计者没有预想到网络会有如此快速地发展,因此现在网络面临的问题都可以追溯到Internet发展的早期决策上,在IP地址的分配上更是能够看到这点。

  在Internet早期,地址空间在表面上看来几乎是无限的,人们便将IP地址基于其申请而分配给某个组织或者公司,而很少会考虑到是否真的需要这个地址空间,没有考虑到IP地址空间最终会用尽。

IPv4使用32位的地址,即在IPv4的地址空间中只有232(4,294,967,296,低于43亿)个地址可用。与此相比,世界人口数已达60多亿。也就是说,将出现IP地址的赤贫人群。因此,IP地址的长度决定了IPV4的地址空间,决定了地址的有限。

  另外,IPv4的地址是按照网络的大小(所使用的IP地址数)来分类的,它的寻址方案使用“类”的概念。A、B、C三类IP地址的定义很容易理解,也很容易划分,但是在实际网络规划中,他们并不利于有效地分配有限的地址空间。对于A,B类地址,很少有这么大规模的公司能够使用,对于C类地址所容纳的主机数又相对太少。所以有类别的IP地址并不适用于网络规划。

  在这种情况下,人们开始致力于下一代Internet技术的研究。但是,由于现在在IPv6下的互连网设施还不完善,IPv4上的资源有待进一步利用,因此,我们仍有必要在IPv4上实现网络和网络互连。因此,IPv4到IPv6的完全过渡将是一个比较长的过程。
二、IP地址与路由的关系

  为了提高IP地址使用效率及路由效率,在基础的IP地址分类上对IP编址进行了相应改进。

子网编址

  一般地,32的IP地址被分为两部分,即网络号和主机号。为提高IP地址的使用效率,子网编址的思想是将主机号部分进一步划分为子网号和主机号:
  网络号 子网号 主机号

  在原来的IP地址模式中,网络号部分就标识一个独立的物理网络, 引入子网模式后,网络号部分加上子网号才能全局唯一地标识一个物理网络。

  子网编址使得IP地址具有一定的内部层次结构,这种层次结构便于IP地址分配和管理。

  它的使用关键在于选择合适的层次结构—如何既能适应各种现实的物理网络规模,又能充分地利用IP地址空间(即:从何处分隔子网号和主机号)。


子网路由

  在子网编址模式下,仅凭地址类别提取地址的网络号和主机号将是不正确的,而必须在路由表的每一个表目中加入子网掩码,于是子网编制模式下的路由表条目变为:

  {子网掩码,目的网络地址,下一路由器地址}

  这样可以用子网掩码的设置来区分不同的情况,使路由算法更为简单。

  子网结构
  设子网掩码,子网掩码与目的地址相与,获得子网地址。

  特定主机
  掩码32位为全“1”,将32位地址全部截下。

  缺省路由
  掩码为全“0”,目的地址也为全“0”,将报文直接送往缺省端口地址。

  无子网结构
  掩码中“1”的个数与网络号位数相同。


VLSM可变长子网掩码

  VLSM(Variable Length Subnet Mask, 可变长子网掩码),这是一种产生不同大小子网的网络分配机制。VLSM将允许给点到点的链路分配子网掩码255.255.255.252,而给Ethernet网络分配255.255.255.0。VLSM技术对高效分配IP地址(较少浪费)以及减少路由表大小都起到非常重要的作用。但是需要注意的是使用VLSM时,所采用的路由协议必须能够支持它,这些路由协议包括RIP2,OSPF,EIGRP和BGP。


CIDR无类别编址

  1992年引入了CIDR,它意味着在路由表层次的网络“类”的概念已经被取消,代之以“网络前缀”的概念。Internet中的CIDR(Classless Inter-Domain Routing, 无类别域间路由)的基本思想是取消地址的分类结构,取而代之的是允许以可变长分界的方式分配网络数。它支持路由聚合,可限制Internet主干路由器中必要路由信息的增长。

  IP地址中A类已经分配完毕,B类也已经差不多了, 剩下的C类地址已经成为大家瓜分的目标。显然,对于一个国家、地区、组织来说分配到的地址最好是连续的, 那么如何来保证这一点呢?

  于是提出了CIDR的概念。CIDR是Classless Inter Domain Routing 的缩写, 意为无类别的域间路由。

  “无类型”的意思是现在的选路决策是基于整个32位IP地址的掩码操作。而不管其IP地址是A类、B类或是C类,都没有什么区别。

  它的思想是: 把许多C类地址合起来作B类地址分配。采用这种分配多个IP地址的方式,使其能够将路由表中的许多表项归并(summarization)成更少的数目。
 要使用这种归并,必须满足以下三种特性。

为进行选路要对多个IP地址进行归并时,这些IP地址必须具有相同的高位地址比特。


路由表和选路算法必须扩展成根据32位IP地址和32位掩码做出选路决策的算法。


必须扩展选路协议使其除了32位地址外,还要有32位掩码。OSPF和RIP-2都能够携带第4版BGP所提出的32位掩码。
根据RFC1466[Gerich 1993]建议,整个世界被分为四个地区,每个地区分配一段连续的C类地址:
欧洲: 194.0.0.0 ~ 195.255.255.255
北美: 198.0.0.0 ~ 199.255.255.255
中南美: 200.0.0.0 ~ 201.255.255.255
亚太地区: 202.0.0.0 ~ 203.255.255.255


  通过这种方式,每个地区拥有约3200万的地址,另有约3200万的地址204.0.0.0 ~ 223.255.255.255保留备用。

  这种分配方式的优点是很明显的:

  1. 地址的分配是连续的

  2. CIDR使路由表的设置更容易

  因此,我们在做IP规划的时候,刻意将子网作成2^n模式,目的便是为了尽量支持路由归并,以减少路由表规模。此外,2^n子网规划模式也是为了保证IP地址划分的规范性。

  通过以上几种方法,一方面可以在一段时间内保障IP地址的耗尽,另一方面可以使路由表更加简洁查找更加高效。

  技术小窍门──子网的计算

  有不少学员在进行IP规划时,总是头疼子网和掩码的计算,其主要原因是对十进制和二进制的转换不熟练。现在给一窍门,可以解决这个问题。首先,我们看一个例子:

  一个主机的IP地址是202.112.14.37,掩码是255.255.255.240,要求计算这个主机所在网络的网络地址和广播地址。

   常规办法是把这两个都换算成二进制,然后相与,就可得到网络地址。其实大家只要仔细想想,可以得到一个方法:掩码为255.255.255.240那么可以知道这个掩码所容纳的IP地址有256-240=16个(包括网络地址和广播地址),那么具有这种掩码的网络地址一定是16的倍数。而网络地址是子网IP地址的开始,广播地址是结束,可使用的IP地址在这个范围内,因此比37刚刚小的,又是16的倍数的数只有32,所以得出网络地址为202.112.14.32。而广播地址就是下一个网络的网络地址减一。而下一个16的倍数是48,因此可以得到广播地址为202.112.14.47。

  那么,如果给定一IP地址范围,根据每个网络的主机数量,要进行IP地址规划,可以按照同样原则进行计算。比如一个子网有13台主机,那么对于这个子网就需要22+1+1+1=25个IP地址。(注意加的第一个1是指这个网络连接时所需的网关地址,接着的两个1分别是指网络地址和主机地址。)那么大于或等于25,又是2^n的数目是32,因此子网部分的掩码只有256-32=224,最后得到掩码255.255.255.224。

  引伸:到后面学习中,学员在学习访问控制表,可能遇到通配符的计算。同样道理计算出需要设置的网络大小即掩码,然后用255.255.255.255减去掩码,就得到通配符。注意这只对一个完整的网络校验有效,对于子网中部分主机限制就无效了

      有兴趣就看看呵呵。。。:)




--------------------------------------------------------------------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值