首页 > 编程知识 正文

IPv4子网划分,ipv4地址范围合并

时间:2023-05-05 19:57:02 阅读:266896 作者:2260

概述可变长子网掩码(VLSM, Variable Length Subnet Mask) 全0子网/全1子网 无类别域间路由(CIDR, Classless Inter-Domain Routing)

概述

IPv4的地址由于其最初的分类机制导致它不能灵活的应对现实需求,于是后来出现了可变长子网掩码(VLSM)无类别域间路由(CIDR)两种用于划分网段的技术。

前者主要用于将大的网络划分成多个小的网络;而后者则有点特别,它是用于子网的聚合。

使用这些技术来划分子网或聚合子网的IP地址都会接一个说明符来说明前缀长度(或使用子网掩码)

如,192.168.0.1/24,则是说明前24位是前缀,其余是主机ID。

可变长子网掩码(VLSM, Variable Length Subnet Mask)

实际上也就是这个技术的诞生促成了子网这个概念,VLSM的概念很简单,就是在原分类地址的基础上,对主机位借位形成子网ID

那么原来的网络ID+主机ID就变为了网络ID+子网ID+主机ID了。

子网划分是提升IPv4地址利用率的最有效方法,我们都知道一个C类网络有254个可分配的主机地址,但如果一个公司有多个规模不大的部门需要独立的网络,这时则需要多个C类网络而造成极大的资源浪费,但利用子网划分,可以只使用一个C类网络即可。

由于该技术划分的方式决定了由一个网络划分出来的子网中,每个子网的ID长度,主机数量都是一样的,且所有子网的子网掩码都是一样的。因为这个特性,所以后来又有了CIDR技术来使的子网大小可以不一,或者说可以聚合几个小的子网。

全0子网/全1子网

VLSM这种划分方式会导致一个特殊情况,就是全0全1子网会使得网络广播混淆。

所以在RFC950中规定了,子网划分后,全0和全1子网不可用。也就是划分n个子网后,只有n-2个子网是实际可用的。但后来因为CIDR技术的使用,这个规定在RFC1878中就废止了。

下面举个示例说明为什么当时全0和全1子网不可用,假设拥有一个网络192.168.0.0/24,现在要划分成两个子网,根据RFC950,我们至少应该借用2位主机位。即/26来划分。

下面仔细看看包含全0子网和全1子网划分出来的网络地址:

原网络192.168.0.0/24,它的网络地址是192.168.0.0广播地址是192.168.0.255。划分的192.168.0.0/26,它的网络地址是192.168.0.0,广播地址是192.168.0.63。(全0子网)划分的192.168.0.64/26子网,它的网络地址是192.168.0.64,广播地址是192.168.0.127。划分的192.168.0.128/26子网,它的网络地址是192.168.0.128,广播地址是192.168.0.191。划分的192.168.0.192/26子网,它的网络地址是192.168.0.192,广播地址是192.168.0.255(全1子网)

从上述例子就可以看出,全0子网的网络地址和原网络的网络地址一致,全1子网的广播地址和原网络的广播地址一致。这样就会导致严重的混乱。这就是在当时不建议使用全0和全1子网的原因。

而现在CIDR技术通过地址前缀形式就可以清楚的要发往哪个子网了。

无类别域间路由(CIDR, Classless Inter-Domain Routing)

该技术是基于VLSM实现的,它是VLSM的一种逆运算技术,设计目的是为了减少路由表的尺寸,它通过将前面提及到的,网络地址前缀相同的连续的地址块通过VLSM的逆运算聚合在一起,达到该目的。

可见,通过将不必要的路由表聚合在一起,可以提升网络的效率。

VLSM是向主机号借位,作为新的子网号使用,而CIDR聚合,则是反向操作,将前缀相同的连续网段融合,这样在路由表中只有一条记录就可以了。

下面给个实例:

如有网络192.168.1.0/27192.168.1.32/27192.168.1.64/27192.168.1.96/27,CIDR是这样将他们聚合在一起的。

首先,把4个地址都转换为二进制模式:

11000000.10101000.0 0000000.00000000

11000000.10101000.0 0010000.00000000

11000000.10101000.0 0011000.00000000

11000000.10101000.0 1100000.00000000

从以上二进制模式就可以看出,他们有17位的前缀是完全相同的,那么设置相应的子网掩码,就可以得到它们聚合之后的网络地址,在本例中,对应的子网掩码为:255.255.128.0。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。