探索网络奥秘5——初识网络(5)

IP编址方案中,根据网络的规模,把IP地址分成了A类、B类和C类。根据用途,还分了D类和E类。D类专门用于组播,我们以后讨论。E类保留,一般不使用。

IP地址有4个字节,其中第一个字节表示了这个地址是哪一类的。

A类地址,掩码默认(以后凡是看到“默认”、“缺省”,言下之意就是可以改)为8位,即255.0.0.0,也就是说默认情况下,第1个字节是网络地址,后面3个字节是主机地址。在第1个字节中,规定第1位恒为“0”,因此,A类地址第1个字节的取值范围为00000000~01111111,十进制数为0~127。其中全0不能使用,127保留为设备自己的环回测试地址,如同我们说的“我”一样,127只表示设备自己。

所以,A类地址第1个字节的取值范围为1~126,如10.250.128.217、122.56.205.12都是A类地址。

B类地址,掩码默认为16位,即255.255.0.0,前两个字节为网络地址,后两个字节为主机地址。第1个字节中第1、2位恒为“10”,所以取值范围为10000000~10111111,十进制数为128~191。如172.16.20.7、139.210.78.5都是B类地址。

C类地址,掩码默认为24位,即255.255.255.0,前三个字节为网络地址,后一个字节为主机地址。第1个字节中前3位恒为“110”,所以取值范围为11000000~11011111,十进制数为192~223。如192.168.1.10、209.128.37.165都是C类地址。

我们注意到,一个IP地址属于哪一类,看第一个数字就知道,同时,这个IP地址的自然掩码(默认掩码)也就确定了。

比方说,IP地址209.128.37.165,第一个数字为209,在192~223范围内,属于C类地址,自然掩码可确定为255.255.255.0,通过“按位与”计算,可知其网络地址为209.128.37.0。

一个IP地址可以通过掩码区分出哪部分是网络编号,哪部分是主机编号。主机编号的长短决定了这个网络可以容纳多少台电脑。

IP地址209.128.37.165,通过自然掩码可知其最后一个字节就是主机编号,二进制有8位。所以,网络209.128.37.0可以容纳的电脑数量为:

一个字节的二进制取值范围为00000000~11111111,可以用2的8次方计算,二进制就以2为底,8次方表示共有8个二进制位。

为什么要减2呢?

在主机地址的取值范围中,有2个数值不能当IP地址用,它们有特殊的含义。一个是00000000,就是十进制数0,它表示该IP地址所在的网络地址,如209.128.37.0就是一个网络地址,而不能当IP地址使用。

另一个是11111111,十进制数255,它表示该网段中的广播地址。如209.128.37.255是一个广播地址,就是说如果IP封装中的收件人地址是这个广播地址,那么网段209.128.37.0中的所有人都会收到并处理这个广播数据。

所以,一个网段中有2个地址不能当IP地址用,掐头去尾,所以要减去2。

我们再来看IP地址172.16.20.7,是一个B类地址,自然掩码255.255.0.0,网络地址为172.16.0.0,该网段可容纳电脑:

能容纳六万五千多台电脑!!!

那一个A类地址呢?能容纳多少台电脑:

一千六百七十多万台电脑!!!!

一个网段容纳那么多电脑,真的好吗?

我们曾经说过,电脑不管要访问谁,第一次都会发一个ARP Request广播在网段中询问对方或网关的MAC地址。广播意味着其他所有人都会收到。几万台电脑,甚至一千多万台电脑都发广播报文,那这个网络中广播报文太多了,一方面,网络带宽被严重占用,另一方面,每台电脑都要花极大精力去处理这些广播数据,电脑资源被严重消耗。

一个阶梯教室里坐二百多人还好,坐六万多人、一千多万人,即使有这么大的房间能坐得下,也基本没法上课!

另一方面,如果一个办公室只有20台电脑,分几类地址给它用呢?即使分个C类,也有254个IP地址可用,地址浪费太多了。

所以,按ABC这样分类和使用IP地址,太不科学了!

怎么办呢?

我们注意到,一个网段能容纳多少IP地址,是由掩码决定的。而不论A类,还是B类C类,掩码都是固定的长度。

能不能让掩码的长度根据需要灵活变化呢?

可变长子网掩码(VLSM)应运而生。

VLSM,就是可以根据网络中电脑的实际数量,让掩码长度变长,占用原来的部分主机位,使主机位数减少,从而控制主机数地址接近实际。

举个栗子,一个办公室20台电脑,加上网络地址和广播地址,共22个地址。使用公式:

计算出n的值,为5。也就是说,主机位使用5位就足够了。我们把最后5位置为0,前面27位都置为1,可以得到掩码为:

11111111.11111111.11111111.11100000

换算成十进制,就是255.255.255.224。你看,掩码位数向右边扩展变长了。

C类网段192.168.1.0,用24位默认掩码,就是一个网段。而使用27位掩码,就可以细分成23=8个网段(扩展了3位),网络号分别为:

红色部分是网络号。

假设我们使用其中的192.168.1.64这个网段,该网段广播地址是192.168.1.95(网络位不变,主机位全置1,就是01011111),可使用的地址范围为192.168.1.65~192.168.1.94,掩码为255.255.255.224。


小Q:如果一个IP地址的掩码32位全为1,即255.255.255.255,是啥意思?

欢迎留言讨论。

你可能感兴趣的:(探索网络奥秘5——初识网络(5))