【摘 要】IP地址为互联网的发展奠定了完整的行为规范,目前IPv4资源日益枯竭,人们会在实际操作中将IPv4地址分类进行使用,同时引入子网掩码进行子网划分,加大了IPv4地址的利用率。
【关键词】IPv4地址 分类 子网划分
一、前言
IP地址的诞生就是注定要为高速发展的计算机网络奠定一套合理的行为规范,目前正在使用的IPv4拥有32位长的二进制数,理论上讲可以容纳40多亿台主机,可见当时相关的设计人员就已经可以确认IP地址在计算机网络通信中的重要性了。这些像是主机的“门牌号”一样的字符串,将接入网络中的设备唯一化,保证了通讯的顺利进行。但是,随着网络技术的发展,特别是云计算催生出的物联网技术,大大加速了IPv4资源的枯竭,2011年,全球互联网IP地址相关管理组织发出正式通告,现有的互联网IPv4地址已分配完毕。虽然IPv6技术已经日趋成熟,其128位的长度,2的128次方个地址的数量可以从根本上解决IPv4的困境,但是取代的过程需消耗大量经费,注定了取代过程将是漫长的。网络技术人员只能在现有的基础上充分利用子网划分、NAT地址转换等网络技术尽可能的节省地址浪费。
二、IPv4地址的分类
在实际操作中,设计人员制订了网络传输控制协议(TCP)和网际协议(IP),这个协议组一般被简称为“TCP/IP”协议,基于这种协议的IPv4地址通常按每8位二进制数(一个字节)为单位分成4段,并且将这4段分为网络号和主机号两部分。网络号中包含的二进制位数直接决定了可以进行分配的网络的数量;主机号中包含的二进制位数则决定了网络中最大的主机数。为了方便使用,IP地址一般采用点分十进制的记录方式。由于IP地址的前3段都可以作为网络号来使用,因此就将IP地址空间划分成了不同的类别,每一类具有不同的网络号位数和主机号位数。这种分类方式会带来一个问题:不同种类的IP地址其网络号会出现重叠的情况,为了方便区分,设计人员根据网络号对IP地址进一步进行了分类:
将网络号以0为开头的IP地址定义为A类地址,理论上讲其网络号最小为00000000即0,最大为01111111即127。但是在实际操作中,我们会把网络号为0和127的留作特殊用途,因此日常使用的A类IP地址有126个。主机号有3段共24位,去掉全为0和全为1的保留地址,每个A类网络可以容纳2-2即16777214臺主机。
将网络号以10为开头的IP地址定义为B类地址,其网络号第1段的最小为10000000,第1段的最大为10111111,同样的方法可以得出,共有16384个B类网络,主机号有2段共16位,去掉全为0和全为1的保留地址,每个B类网络可以容纳65534台主机。
将网络号以110为开头的IP地址定义为C类地址,其网络号第1段最小为11000000,第1段的最大为11011111,同样的方法可以得出,共有2097150个不同的C类网络地址,主机号有1段共8位,同样去掉全为0和全为1的保留地址,每个C类网络可以容纳254台主机。
将网络号以1110为开头的IP地址定义为D类地址,D类地址用于在IP网络中的组播,地址空间的范围从224.0.0.0到239. 255. 255.254。
将网络号以1111为开头的IP地址定义为E类地址,并保留作研究之用。因此Internet上没有可用的E类地址。其有效的地址范围从240.0.0.0 至255.255.255.255。
在IP地址中,有些是有特殊含义的保留地址,这些地址不能分配给主机使用。比如:0.0.0.0是所有不清楚的主机和目的网络的集合;255.255.255.255是限制广播地址;169.254.X.X被微软买断,当DHCP服务器发生故障时由Windows操作系统自动分配;127开头的IP地址是本机地址,主要用于测试。
同时,人们还专门预留了不能在公网路由上使用的私人IP地址。A类地址里的10.0.0.0~10.255.255.255,B类地址里的172.16.0.0~172.31.255.255,C类地址里的192.168.0.0~192.168.255.255都是私人地址。这些地址被经常用于企事业单位的内部网络中这些内部网络由于不与公网互联,因而用户可能使用随意的IP地址,保留这样的地址供其使用是为了避免以后接入公网时引起地址冲突。
三、子网划分
从上面的论述中我们可以看到,有些情况下,同一个网络号内所容纳的主机数量庞大,大大超过了主机的数量,这样在使用起来就非常的不方便,并且会造成宝贵的IP地址资源的浪费。为此,在使用过程中人们会使用子网掩码来配合IP地址的使用。在IPv4版本下,子网掩码和IP地址的格式类似,都是采用了32位长的二进制数来表示,但是由一串持续的1和一串连续的0组成的。比如,A类IP地址的默认子网掩码是255.0.0.0,B类IP地址的默认子网掩码是255.255.0.0,C类IP地址的默认子网掩码是255.255.255.0。通过这几组默认的子网掩码我们可以发现,子网掩码左侧连续的“1”代表网络位,字符“1”的个数就是网络位的长度;右侧连续的“0”表示主机位,字符“0”的数目等于主机位的长度。这样设计的好处在于计算机将IP地址和子网掩码进行“与”运算后,子网掩码中连续的0就可以遮住原主机数,而不改变原网络段数字,这样计算机可以迅速的确定两台主机的IP地址是否在一个号段内,并且使用者也会很容易通过0的位数确定子网的主机数(即2的主机位数次方-2,因为主机号全为1时表示该网络广播地址,全为0时表示该网络的网络号,这是两个特殊地址)。其实子网掩码确定IP地址中的网络号和主机号只是其一方面的作用,另一方面它还可以将一个大的IP网络划分为若干个小的子网络,划分子网的方法主要有默认子网掩码和变长子网掩码两种方式
1、 默认子网掩码
上面我们提到,子网掩码可以决定IP地址中的网络号,那么就可以通过手动设置的方式改变原有地址中的网络号和主机号。具体来说,就是可以使用B类或者C类IP地址的子网掩码(255.255.0.0或者255.255.255.0)将原有的A类IP地址的网络号由1个字节改变为2个或者3个字节,或者使用C类IP地址的子网掩码将原有B类IP地址的网络号由2个字节改变为3个字节,从而起到划分子网,减少子网中主机容量的目的。
2、 变长子网掩码
变长子网掩码是在默认子网掩码的基础上,将原本为0的最高位部分修改为1,这样就可以使IP地址中的部分主机位改变为网络位,通过这种“借位”的方式达到划分子网的目的。比如一个C类IP地址192.168.0,在使用默认子网掩码255.255.255.0时,其地址范围192.168.0.1~192.168.0.254处于同一网络内。现在根据实际情况,需要将该网络划分为5个子网。划分子网的方法如下:由于5大于2的2次方、小于2的3次方,我们可以利用变长子网掩码,将默认子网掩码255.255.255.0中的第4个字节00000000修改为11100000(即子网掩码修改为255.255.255.224),由于子网掩码中的1代表网络位,换句话讲就是利用了这种方法向主机位“借用”了3位作为网络位来使用。这3位有000,001,010,011,100,101,110和111共8种组合方式,划分的子网可以满足需要。
既然子网掩码在子网划分中起到这么重要的作用,那么我们在实际操作中,对于子网掩码的设置也需要谨慎小心,否则就容易出现问题。比如,主机一的IP地址为192.168.1.2,子网掩码为255.255.255.192,主机二的IP地址为192.168.1.100,子网掩码为255.255.255.192。如果现在主机一要给主机二发送数据,先要判断两个主机是否在同一网段。通过计算,我们可以得出主机一的网络号为192.168.1.0,主机二的网络号为192.168.1.64,两个网络号不相同,也就是说,两台主机不在同一网络,因此数据就需要通过默认网關发送给主机二所在网络。
子网掩码的重要性决定了人们在书写IP地址的时候,就要将子网掩码一起书写出来,比如192.168.0.1/24或者172.17.0.1/18,这样才能体现出IP地址定义的严谨和划分的灵活。
四、结论
我们在借助IP地址和子网掩码来划分子网的实际操作时,既要考虑到当前网络的需要,还要考虑到今后网络的扩容和升级。我们可以在满足主机数量需求的前提下划分出更多的子网,这样可以在一定程度上节约IP地址资源,并且如果将来需要更多的子网,就不用重新分配IP地址。同时如果一个网络中的主机数量太多,网络广播就会占用较大的带宽,影响网络利用率。因此需要在实际操作中详细计算子网的划分,提高网络利用率。
IP地址的发展见证的是网络技术的成熟,子网掩码的引入更是将IP地址的利用率提高了一个档次。我们在畅快的使用网络的同时绝不能忽略带给我们方便快捷的这个网络协议,并且我们也在期待着它的技术的再一次发展和进步。
参考文献:
[1] 谢希仁.计算机网络(第6版).电子工业出版社 .2012年6月
[2] 崔北亮 陈家迁.非常网管:网络管理从入门到精通(修订版) .人民邮电出版社 .2010年12月
[3] 王达. 深入理解计算机网络 .机械工业出版社 .2013年1月
作者简介:
彭城(1982- ),男,汉族,大学本科,工作于江苏省徐州技师学院信息工程系,讲师,主要从事计算机专业教学工作,邮编:221000