学了子网掩码一个地方就是不理解,其实子网掩码根本不需要拿四字节去存,更不应该拿四个三位十进制数(比四字节更占内存),更更不应该用字符串存。
应该是用0-31的一个数字就足够。0就是全不掩,31就是全部掩饰。
题主是对的,但是子网掩码长度应该是0-32,而不是0-31。
第1个IP地址 = 00000000.00000000.00000000.00000000
最后1个IP地址 = 11111111.11111111.11111111.11111111
每个IP地址占32 bit位,每个字节包含8个bit位,所以每个IP地址占4个字节(byte)。
如果全球IP地址配置在一个广播域里,压根不需要网关(Gateway),直接使用ARP广播即可发现对方的MAC地址(根据对方的IP地址)。
但是,如果网络真的这么设计,那么这个网络几乎不可用,因为仅仅广播报文就会将整个网络堵塞得一动不动。
网络设计师引入了网络掩码(mask)的概念,其实目的很简单,就是将全球IP地址池分段(Segment)。
如果将全球IP地址作为一个整体,如何最简练的表达?
没错,“0.0.0.0/0”代表的是全体IP地址。
“0.0.0.0/0” 这里的数字全部为十进制,将0.0.0.0转换成二进制。而/0中的数字依然保持为十进制,则有:
0.0.0.0/0 = 00000000.00000000.00000000.00000000/0
00000000.00000000.00000000.00000000 其实就是地址池的第一个IP,用十进制如何表达?
如果把全球IP地址比喻成一个大西瓜,这个0表示对这个大西瓜切的次数,0表示切0次。说人话,没有切的意思。
接下来玩切西瓜的游戏,先来切1刀,西瓜咔嚓成2半。
00000000.00000000.00000000.00000000(二进制)/ 1(十进制)= 0.0.0.0/1(十进制/十进制)
10000000.00000000.00000000.00000000(二进制)/ 1(十进制)= 128.0.0.0/1(十进制/十进制)
第一半西瓜(整体)最后一个IP地址(个体)是多少?
01111111.11111111.11111111.11111111(二进制)/ 1(十进制)= 127.255.255.255/1(十进制/十进制)
第二半西瓜(整体)最后一个IP地址(个体)是多少?
11111111.11111111.11111111.11111111(二进制)/ 1(十进制)= 255.255.255.255/1(十进制/十进制)
二进制是给计算机看的,因为计算机最擅长二进制计算。
将上文的第二半西瓜单独拿出来再切一刀,又诞生了两半。
10000000.00000000.00000000.00000000(二进制)/ 2(十进制)= 128.0.0.0/2(十进制/十进制)
11000000.00000000.00000000.00000000(二进制)/ 2(十进制)=192.0.0.0/2(十进制/十进制)
将上文的第二半再做22次的切割,即一共做2 + 22 = 24次的切割,即可诞生读者最熟悉的西瓜(整体)编号:
11000000.10100100.00000000.00000000/11111111.11111111.11111111
计算机如何计算这是哪个network segment?
11000000.10100100.00000000.00000000
11111111. 11111111. 11111111
做bit-wise 与运算,得到network segment = 192.168.0.0 (十进制)
那么这个网段 192.168.0.10/24的network segment是多少?Host又是多少?
network segment = 192.168.0.0 (十进制)
host= 00001010 = 10 (十进制)
两者相加 network segment + host =192.168.0.0 + 10 = 192.168.0.10 (十进制)
当西瓜切32刀的时候,就成为最小的单元,无法继续切割了。比如 192.168.0.255/32,这个网段就一个IP地址,即192.168.0.255。
上文中/后的数字为掩码的长度,按照习惯统一为十进制,因为它是为人类阅读习惯而设计的。
原文始发于微信公众号(车小胖谈网络):为什么子网掩码不是一个0-31的数字?
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
点赞
https://cn-sec.com/archives/2361135.html
复制链接
复制链接
-
左青龙
- 微信扫一扫
-
-
右白虎
- 微信扫一扫
-
评论