【数通学习】【三层交换】子网划分

匿名 (未验证) 提交于 2019-12-02 23:43:01

为何会有子网?

假设有一个IP数据包准备从A发送到B。那么A把数据包投递给路由器之后,路由器怎么投递这个数据包呢?如果要路由器在他的路由表中直接匹配完整的IP地址,那就需要在路由器中存储B的IP地址,如果设备少还好说,如果设备成千上万,甚至上亿,那路由器就要在路由表中存储所有的网络节点的IP地址,这显然是不现实的。

那么怎么办呢?其实就和把地球划分为一个个国家和地区,把一个国家划分为一个个省,省下面划分为市是一样的道理。

如果有一个包裹要邮寄给你,快递员首先是看包裹的发送地址中的省是哪个,如果是湖北省,快递员就把包裹分拣之后发给湖北省的分拣中心,湖北省分拣中心的快递员继续看地址中是哪个市......这样逐级分发,处于传输核心处的快递员并不需要知道所有信息,大大减轻了分拣路由的压力。

如下图:

所以IP地址中,被分成了两部分,一部分被称为网络部分,或者叫网络号,一部分被称为主机部分。

网络部分用来标识网络设备所处的网络区域,这样路由器进行数据包路由的时候,就可以可以根据网络部分来确认网络设备所处的大概位置,然后把这个数据包交给这个网络区域的路由器负责继续路由,而这个区域的路由器就可以根据主机部分直接找到对应的网络设备。

即可以这么理解:

网络部分标识设备所处的网络位置。

主机部分标识设备在网络中具体的编号。

IP地址分为网络部分和主机部分

A类地址的网络号为前面八位。

所以A类地址的网络号从0-127,一共128个,但是0、10、127留作他用,所以实际上公网上应该有128-3= 125个A类地址的网络号。

一个A类地址网络号下面,可以有2^24个主机:16,777,216。

所以A类地址具有一个子网下面,主机数量多的特点,如果一个网络中主机数量特别庞大,A类地址是很好的选择。不过A类地址大部分都被美国占用了。

B类地址的网络号为前面16位。

B类地址前16位位网络号,后16位为主机号。

相对A类地址来说,一个B类地址的网络中的主机数大大减少了,不过B类地址的网络号很多,而且一个网络中的主机数量达到了6万多台,所以适合给大中型网络使用。

C类地址的网络号位前面的24位。

C类地址的一个网络下的主机号数量为:2^8 = 256.

C类地址网络号数量庞大,一个网络下主机数量相对较少,比较适合构建一些小型的局域网络。

D类和E类作为组播地址和保留地址,所以没有网络号。

网络掩码

网络掩码和IP地址的长度一样,也是32位。

网络掩码前面是连续的1,后面是连续的0,如:

11111111.11110000.00000000.00000000 -》 255.240.0.0

网络掩码通过每一位的值取0还是1来区分网络为和主机位,如:

可以查看自己电脑的IP地址,掩码和网关:

你可以看到默认网关的网络号和你电脑的网络号是一样的。

其实这个默认网关一般就是你连接到的路由器的IP地址。

IP地址按功能划分类型,可以分为3类:

网络地址:

标识网络的IP地址,简单的理解,主机号为全为0的地址就是网络地址,如:

一个A类地址10.0.0.0,就是一个网络地址,因为它的网络号是前八位,也就是10,剩下的位都是主机号,主机号全为0,所以这个IP地址是一个网络地址。

广播地址:

用于向整个网络广播的IP地址,简单的理解,主机号全为1的地址就是主机地址,如:

一个B类地址160.133.255.255,这个就是一个B类广播地址,因为前面16位为网络号,后面16位为主机号,主机号全为1,所以这个IP地址是一个广播地址。

主机地址:

用于给网络终端设备使用的地址就是主机地址,主机地址的主机号的比特位全不为0且全不为1。

比如一个C类地址192.168.10.10,这个就是一个C类主机地址,因为前面24为网络号,后面8为为主机号,主机号不是全为0,也不是全为1,所以是一个主机地址。

注意:网络地址和广播地址都不能分配给终端设备使用。

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

子网掩码除了可以用IP地址一样的点分十进制表示外,也可以用一个十进制数来表示,这个十进制数就是掩码中1的个数,如:

为什么需要可边长子网掩码呢?

因为如上面的C类地址,它的网络地址为:192.168.0.0,这个网络中可以容纳的主机位254台(除去主机号全位0的网络地址和全位1的广播地址)。

为了让剩余的IP地址能够被别人使用,又不至于把大家都放到一个广播网络中来,于是又了可变长子网掩码的概念。

什么是可变长子网掩码?

其实很简单,规定的A、B、C类地址的掩码长度是固定的。但如果让掩码长度不固定,掩码就可以向主机号增长:

这样,子网占用两个字节,所以这个网络下面就有四个子网,分别位:00,01,10,11.

这样我们就可以把子网子网00分给甲使用,它的主机个数就有:2^6 = 64台。

同样可以把主机号01、10、11分别给不同的网络使用,这样就将广播域隔开了。

至于为啥可以通过主机号隔开广播域,实际上需要配合路由器使用,路由器作为子网的网关,把整个网络地址划分了多个子网,多个子网之间通讯要经过路由器进行三层转发,这样就避免了全网广播风暴。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!