扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
对于所有从事IP网络方面工作的工程师来说,进行IP子网划分操作属于一个必备的关键技能,也属于必须掌握的专业内容;但对于初学者来说,真正理解IP子网划分的概念也是一件相当困难的事情。这么多年来,我经常看到由于不恰当的教授模式导致初学者无法真正掌握IP子网划分概念的本质。实际上,有一种易于理解的方式可以轻松地说明这一问题。通过自创的图形化方法和计算机快捷方式,我已经帮助无数人掌握了子网划分的关键。在本文中,我将就该问题倾囊而授,将所有的关键点都讲述出来。
IP地址和子网
IP是英文Internet Protocol的缩写,意思是“网络之间互连的协议”,也就是为计算机网络相互连接进行通信而设计的协议,适用范围包括了从最小的私人网络到最大的全球互联网在内所有类型的计算机网络。在网络中,每一台网络设备都拥有单独的IP地址作为标识符。IP地址由从0到42亿9496万7295范围内的32位数字组成。因此,理论上说,这就意味互联网最多可以包含大约43亿个单独系统。但是,这么大的规模对于网络管理来说,是非常的不方便,因此,它被分为四个部分,每个部分都是由一个8位字节组成,中间用“.”号给予分割。由于二进制数字太长阅读起来不是很方便,所以它被转换为0到256之间的十进制数字。下面显示的数字就是IP地址的实际形式。
0.0.0.0
0.0.0.1
...依次增加252台主机...
0.0.0.254
0.0.0.255
0.0.1.0
0.0.1.1
依次增加252台主机...
0.0.1.254
0.0.1.255
0.0.2.0
0.0.2.1
...依次增加大约40亿台主机...
255.255.255.255
子网,顾名思义,指的是次级网络,也就是位于一张大型网络中的小网络。最小的没有包含更多分支的子网被认为是一个单独的“广播域”,通过一台以太网交换机建立起一张局域网(LAN)。对于网络来说,广播域服务是一项非常的重要功能,因为它可以实现让网络设备通过介质访问控制地址直接进行连接,而不必经多张子网,甚至整个互联网。通过介质访问控制地址进行连接的通讯方式仅仅限制在一个较小的网络中,因为它们依靠地址解析协议广播找到自己的办法,会带来广播噪音,当广播噪音大到淹没了正常广播信息的时间,通讯就无法进行了。处于这种原因,通常情况下常见的子网是8位的,或者说正好一个字节,但稍微大一些或者小一些也是被容许的。
子网需要有开始和结束的数字,通常情况下开始的数字一定是特殊的,在很多情况下,结束的数字也是特殊的。开始的数字被叫做“网络身份标识码”,结束的数字则被称为“广播身份标识码”。由于它们属于用于特殊用途的特殊数字,所以你不能使用这些数字。对于一张特定的子网来说,网络身份标识码是正式的身份标志,而结束数字是网络中的每台设备接听广播信息的广播地址。在你介绍子网的时间,必须提到网络身份标识码和子网掩码,只有这样,才能确定网络的实际大小。如果你想将数据发送到子网内的所有设备上(举例来说群体广播),把它发送到广播地址就可以了。在本文后面的部分,我将告诉你图形数学方面的一个简单办法来轻松地确定子网的网络和广播身份标识码。
图形子网学习法
这么多年来,我看到的是人们为掌握IP子网划分的技术绞尽脑汁,因此,我非常希望能够找到一种更好的方法来解决这个问题。很快,我就意识到了,问题的关键在于IT领域的很多初学者缺乏数学方面的基础,对于二进制数字概念的理解存在困难。为了减轻这种能力上的差距给学习带来的困难,我找到了一种比较有效的解决方法:图形展示法,可以更明确地说明子网的本质,具体内容你可以查看图A。在这个例子中,我们是位于从10.0.0.0到10.0.32.0的IP地址范围中。需要注意的是,最后的IP地址10.0.32.0是下一个子网的开始数字,实际上这个子网是在10.0.31.255就已经结束。
图A
通常情况下,数字每增加一位,就意味着子网规模翻了一番,容纳主机的数量也随之增长。最小的分类包含了8位数字,也就是说,子网内可以包含256台主机,由于第一个和最后一个网络地址无法使用,可以网络中最多只能有254台主机。确定子网中可以容纳可用主机最大数量的最简单的办法就是用2的子网实际位次方减去2。对于9位来说,就是2的9次方减去2(我们不能使用的开始和结束的数字),即512减去2,可用主机最大数量是510台。而对于13位的网络来说,我们能够获得的可用主机最大数量就是如上图所示的结果高达8190台。
怎样才能正确地进行子网划分操作
子网可以进一步划分为较小甚至更小的子网。划分网络时,最应该注意也是最重要的一点就是不能任意的选择开始和结束的数字。划分的过程必须基于二进制的概念。学习划分的最好途径就是根据我提供的子网学习法找出有效的子网。在图B中,绿色表明划分的子网是有效的,红色表明划分的子网是无效的。
图B
和其它方法一样,采用子网学习法时,我们要做的也是找到中间点,并将它平均分为两个部分。接下来,在标注完标记后,我们在各个部分中继续进行平均分配的操作。在上面提供的例子中,我们进行了五次的平均分配操作。如果你仔细观察有效(绿色)的子网模块,就会发现,所有的子网开始标志都是不低于结束标志的。这个是由于数学方面的原因造成的,我们会在文章的后面给予说明,但通过图形明确显示出来的结果比其讲述数学原理更有助于学习者的理解。
子网掩码的作用
在确定子网规模的时间,子网掩码起着关键的作用。仔细看图C。特别要注意图中红色的数字。当你划分子网的时间,这八个特殊数字是关键中的关键,它们是255、254、252、248、240、224、192和128。在IP网络建立时,你会频繁的看到这些数字,牢记它们将会让你的工作更加轻松。
图C
在图中,我给出了三种不同规模的网络。通常情况下,我们经常看到的是前两种,主机位长度在0到16的范围。在数字用户线路和北美24路脉码调制也就是T1线路中,经常使用的是0到8位的范围。而在专用网络中通常使用的是8到24位的范围。
需要注意的是,在二进制中所有的0是从右向左的。二进制形式的子网掩码将所有的一放在左侧,而右侧则是所有的0。0的数量和子网的长度是一致的。从我给出的例子中,可以到看这个非常有趣的规律,因为位于右侧的所有8位字节都包含了0,而在左侧的所有8位字节都是由一组成。因此,我们看一下一个子网长度是十一位的子网掩码的话,它的二进制子网掩码完全形式就是11111111.11111111.11111000.00000000。你可以看到,在整个子网掩码中,是在第3个8位字节,子网掩码从1转换到0。这个子网掩码转换出来的结果就是255.255.248.0。
子网掩码为什么被叫做“掩码”
子网掩码不仅可以用来确定子网的规模,而且也可以用来判断子网的结束位置,只要你有网络中的任意IP地址就可以实现这样的查询。为什么子网掩码被称做“掩码”呢?因为它实际上忽略了主机位而只是提供了网络身份标识码作为子网的开始。重要的是你知道了子网的开始和规模,就可以找到结束的位置,也就是广播身份标识码。
只要找到任意的网络IP地址和子网掩码,就可以利用AND操作获得网络身份标识码。举例来说,网络IP地址10.20.237.15和子网掩码255.255.248.0是怎样被用来确定网络身份标识码的。在这里需要注意的是,它们通常会被简写为10.20.237.15/21,21指的是子网掩码的长度。图D和图E显示的是分别在十进制和二进制情况下是怎样进行AND操作的。
图D
十进制模式
图E
二进制模式
二进制模式显示出0操作是怎样掩盖实际的网络IP地址的。在整个掩盖过程中,前面所有的数字都将被转换为0,不论其实际数字是多少。当将获得的网络身份标识码由二进制转换为十进制,你就会得到10.20.232.0这样的实际网络身份标识码。
在讲授子网划分的时间一直困扰我的一件事情是,初学者在进行二进制转换和AND操作时间总是显得非常迷惑,找不到一种简单可行的方法。我甚至见过来自IT领域的专家用非常缓慢和繁琐的技术将所有数据转换成二进制,进行AND操作,再利用Windows计算器转换回十进制。但实际上使用Windows计算器进行这样的操作是非常简单快捷的,AND操作可以直接在十进制下面运行,就以237为例子,只要选择AND操作,输入248点击输入,就可以立即获得如图F所示的真正结果:232。我一点也不明白为什么没有人向初学者讲授这个技巧,因为它让子网划分计算变得非常的容易。
图F
当子网掩码中有11个0的时间,就意味着子网的规模是11位长。这也就说明,有2的11次方,或者说2048台主机可以出现在这个网络中,这个子网最后的IP地址是10.20.239.255。在第三个8位字节可以看到3个0,这就意味着在IP地址的第3位出现了差异,也就是2的3次方,或者说8的差别。因此,下一个子网的开始是10.20.232+8.0,也就是10.20.240.0。我们在这个地址上降低1,就获得了10.20.239.255,亦即本子网的结束位置。为了帮助你更好的理解,图G显示了子网学习法中它的位置。
图G
IP分类让一切变得更简单
因为IP子网可以任意分类,所以互联网的创建者选择让网络包含了多个不同的类别。需要注意的时是,对于子网掩码计算来说,这并不是重要的事情;它仅仅和互联网是怎样“规划”的有关。互联网可以分为A、B、C、D和E五个不同的类别。A类使用了所有互联网地址的一半,B类则使用了剩余部分的一半,C类使用的是剩余部分的一半的一半,至于D类(群体广播)则在此基础上又使用了剩下的一半,剩下的所有部分就是属于E类使用的了。有学生告诉我,他们曾经花费整星期的时间去记忆这个分类,直到看到如图H所示的简单表格才真正掌握了。但实际上你根本没有必要记住什么,只要知道使用可用的一半就可以了。
图H
需要记住的关键一点是,所有的子网都是以双数开始以单数结束的。请注意,0.0.0.0/8(0.0.0.0到0.255.255.255)是禁止使用的保留地址,127.0.0.0/8 (127.0.0.0到127.255.255.255)是作为默认的回送地址使用。
所有A类网络地址的第一个8位字节都在1到126的范围中,因为0和127属于保留数字。A类子网的长度为24位,也就是说子网掩码只有8位长。举例来说,通用电气公司拥有3.0.0.0/8段的网络地址,这是非常幸运的事情,意味着在主机数量到达一千六百八十万台前,它都不必分割自己的网络。美国陆军拥有6.0.0.0/8段的网络地址。第三级通讯拥有8.0.0.0/8段的网络地址。国际商业机器公司拥有9.0.0.0/8段的网络地址。美国电话电报公司拥有12.0.0.0/8段的网络地址。施乐公司拥有13.0.0.0/8段的网络地址。惠普公司拥有15.0.0.0/8段和16.0.0.0/8段的网络地址。苹果公司拥有17.0.0.0/8段的网络地址。
所有B类网络地址的第一个8位字节都在128到191的范围中。B类子网的长度为16位,也就是说子网掩码也有16位长。举例来说,博尔特·贝拉尼克·纽曼通信公司拥有128.1.0.0/16段的网络地址,可以提供从128.1.0.0到128.1.255.255的网络地址。卡内基梅隆大学拥有128.2.0.0/16段的网络地址。
所有C类网络地址的第一个8位字节都在192到223的范围中。C类子网的长度为8位,也就是说子网掩码有24位长。需要注意的是,美洲互联网号码注册管理机构ARIN(该组织负责分配互联网上的网络地址)只对个别公司以及确实需要1024个公共网络地址的用户出售四段C类网络地址段。如果你需要运行边界网关协议以便对多家互联网服务提供商的服务进行冗余操作的话,就必须拥有属于自己的网络地址段。你还应该了解到,现在已经不是原始网络时代了,那时间获得包含1680万台主机的A类网络地址是一件很轻松的事情。而现在你必须为/22的子网掩码,或者说255.255.252.0,包含1024台主机的网络地址付年费。
在实际操作中,子网分类的概念是有可能给网络带来破坏的。我就见到过这样的案例,由于人们忘记关闭旧式思科路由器上的设置,而大型广域网配置为动态路由时,大型子网的线路受到新加入连接的攻击,导致线路被劫持。发生这种情况的原因是思科路由器假定子网掩码必须是/8、/16或者/24的全部,即使你设定的是介于两者之间也是不可行的。不过,在所有新版本的思科网际操作系统中,都已经取消了对子网掩码参数的默认限制。这项操作是由默认的“IP Classless”命令完成的。
公共和专用的网络IP地址
除了保留的网络IP地址(0.0.0.0/8和127.0.0.0/8)外,还有其他的一些网络地址不能在公共互联网中使用。这些专用子网包括了专用网络地址,通常是用来在防火墙内部或路由器中执行NAT(网络地址转换)操作的。网络地址转换操作对于专用网络来说是必须的,因为专用网络地址是不能直接连接到公共互联网上的,所以必须首先转换为公共网络地址,才能连接到互联网上。专用网络地址不属于任何人,因为所有人都可以使用它,也就意味着没有人真正的拥有它;所以对于公共互联网上的专用网络地址来说,它没有真正的实际位置。专用网络地址通常在大多数局域网和广域网环境中使用,除非你非常幸运,拥有A类或至少一段的B类地址,这种情况下,你才可能有足够的网络地址分配给所有的外部和内部主机。
下面的网络地址段就是分配给专用网络地址使用的。
l 10.0.0.0/8 (10.0.0.0 到10.255.255.255)
l 172.16.0.0/12 (172.16.0.0到 172.31.255.255)
l 192.168.0.0/16 (192.168.0.0 到 192.168.255.255)
l 169.254.0.0/16 ((169.254.0.0到169.254.255.255)*
*这里需要注意的是169.254.0.0/16这个专用网络地址段,它是在动态主机分配协议服务器不可用的时间,用于网络地址随机自助分配的。
在通常情况下,10.0.0.0/8是用于较大的网络,因为在这个网络地址段中包含了1680万个网络地址。你可以根据每个子网的地理位置将它划分为不同的子网,接着再细分为更小的子网。规模较小的公司通常使用172.16.0.0/12的网络地址段,在这个基础上划分为更小的子网,尽管如果愿意的话,它们也可以选择使用10.0.0.0/8网络地址段。家庭网络通常使用192.168.0.0/16的子网,选择/24的子网掩码。
通过专用网络地址和网络地址转换的使用,达到了允许一个单一公共网络地址来代表成千上万专用网络地址的目的,因此,在可预见的未来中,IPv4还是保证可以正常运行的,它的使用时间获得了有效的延长。按照目前的使用情况,IPv4在今后的17年中还可以提供足够的网络地址。美洲互联网号码注册管理机构现在对网络地址的管理也更加严格,相比苹果公司可以轻松获得包含1680万个网络地址的地址段的旧时代,现在获得网络地址的代价变得昂贵了很多。在下一个版本的互联网协议,也就是IPv6中,网络地址的长度将增加为128位,这个也就意味着有它会比IPv4多出79千兆兆倍的网络地址。即使为地球上的全部43亿人口每人分配43亿个网络地址,你还可以剩下1800兆的网络地址。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。