一、初学者精通IP地址划分

首先介绍下什么是IP地址?

——————————————————————————————————————————————————————

IP地址是IP通信的基础,好比人的身份证号码,用来标识一台设备或接口,通信的基础是基于IP地址来进行通信的。IP地址的格式是由32位点分十进制组成。例如:192.168.1.1。当初设计IP地址的时候,无法预测爆炸性的增长,设计的IP地址可用共43亿,已经无法满足当前提出的万物互联的需求。

——————————————————————————————————————————————————————

发展历程

这里介绍的IP地址是IPv4版本。

4段十进制数字,每一段最大不能超过255。在2019年11月IPv4地址已经分配完毕了,已经无可用地址分配。为了进一步扩大互联网的发展,通过IPv6重新定义空间,IPv6采用128位地址长度,2的128次方,可以为地球每一粒沙子分配一个IP地址,真正的能实现万物互联的理念。
——————————————————————————————————————————————————————

IP地址类型

IP地址在当初研发规划的时候,已经定义了IP地址的规范及范围。IP地址的范围是0.0.0.0-255.255.255.255。又定义了IP地址的使用类型:公有地址(公网地址)和私有(私网地址)地址。

公有地址是真正用于互联网的广域网通信使用,该IP地址属于注册备案地址。由Inter NIC因特网信息中心机构统一规划分发给三大洲,再由各大洲分配到各国家使用,国家在自定义分配给运营商,运营商在分配到各个单位部门及个人用户。这些地址全部注册备案登记。

私有地址属于非注册备案地址,专门为企业/个人内部使用,一部分原因就是为了解决IPv4不够用。

私网地址分了ABCDE类地址,DE类地址用于科学研究领域保留使用。
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

IPv4地址的范围和私有地址的范围都是固定的规划好的规范。以上的信息记住这些定义规范。
————————————————————————————————————————————————————————

IP地址为什么是32位点分十进制?

我们首先来看看IPv4地址如何转换二进制的,以C类私网地址192.168.1.1为例

我们确定规范定义中,每段的数字范围是0-255,那么总共是256。以一种非常简单的规则关系来描述。

256一直除以2,得出的是128/64/32/16/8/4/2/1,除了8次,共8位。用11111111来表示。

可以更进一步的理解,11111111就等同于:128 64 32 16 8 4 2 1

4组8个1,就是32位,11111111.11111111.11111111.11111111=255.255.255.255,所以叫32位点分十进制地址。

—————————————————————————
在用竖版来确认下位置。

 1    1    1   1  1   1   1   1
128  64   32  16  8   4   2   1

那么在回头看192.168.1.1的二进制是多少,我们不需要去进行十进制和二进制的算法除余的转换,只需要记住128 64 32 16 8 4 2 1和11111111的对应关系。

把192.168.1.1展开,按照对应关系补全数字即可。

192=128+64
168=128+32+8
1=1
1=1

那么只需要填充数字即可,按照8位去填充,用上那个数字就置1,不用就为0.
192 = 1 1 0 0 0 0 0 0      按照128 64 32 16 8 4 2 112864都用上了为1,其余没用上都为0168 = 1 0 1 0 1 0 0 0
 1  = 0 0 0 0 0 0 0 1
 1  = 0 0 0 0 0 0 0 1

128 64 32 16 8 4 2 1这个规律一定要记住,记住这个规律数字,在进行转换的时候可以快速转换。在计算相加的时候,都是以最大数来相加。

—————————————————————————

在来随便举个例子,都可以快速的列出二进制

如私网范围B类地址:172.20.200.149,这个地址。直接套用规律数字

规律数字:128 64 32 16 8 4 2 1

172 = 128+32+8+4
20  = 16+4
200 = 128+64=8
149 = 128+16+4+1

得出的结果:
     128   64   32  16  8   4   2   1
172 = 1    0    1   0   1   1   0   0
20  = 0    0    0   1   0   1   0   0
200 = 1    1    0   0   1   0   0   0
149 = 1    0    0   1   0   1   0   1

那么172.20.200.149的二进制就是:10101100.00010100.11001000.10010101

这里已经能很快速的计算出IP地址的转换。其实很简单的,搞清楚逻辑,感觉小学水平逻辑。在来看看每次电脑配置了192.168.1.1IP地址后,为什么会自动出现一个子网掩码。255.255.255.0

————————————————————————————————————————————————————

子网掩码

子网掩码的唯一作用就是用来确定,双方通信的IP地址是否是同一网段的地址,如同一网段则通信,不同网段则不能直接通信。

在回顾下,A/B/C类私网地址规定的子网掩码。
A类地址范围:10.0.0.0-10.255.255.255    子网掩码:255.0.0.0
B类地址范围:172.16.0.0-172.31.255.255  子网掩码:255.255.0.0
C类地址范围:192.168.0.0-192.168.255.255子网掩码:255.255.255.0
这些设计IP地址的机构规定的A/B/C三类地址的范围及掩码。

现在看看掩码是如何确定两个IP地址是否同一网段,如果没有掩码,单纯的IP地址是毫无意义。

比如:192.168.1.1这个IP和192.168.2.1这个IP,你说他是一个网段的吗?你说他是,他就是,你说他不是,也不是。因为没有证据来证明他就是或不是。子网掩码就是来证明他们是否在同一个网段。这里又引入了,IP地址的网络位和主机位。

C类地址掩码255.255.255.0,255.255.255,代表网络位,0代表主机位。

你这么理解,192.168.1.1/255.255.255.0,代表网络位的范围的数字不能变动,只有主机位能变动。

网络位:代表这个IP地址所处的网段。主机位:代表这个IP地址可以分配给主机使用的地址。

在进一步想象下,这个C类IP192.168.1.0,网络位就占用了32位中的前3段,也就是24位。剩余的8位是主机位。所以C类地址,能分配的IP地址为0-255个,共256个IP地址。范围:192.168.1.0-192.168.1.255。

———————————————————————

我们继续举例:那么是否在同一范围?

192.168.1.1,掩码255.255.255.0和192.168.1.10,掩码255.255.255.0是在同一个网段。
192.168.1.1,掩码255.255.255.0和192.168.2.10,掩码255.255.255.0,就不在同一个网段了。

按照网络位不变动的情况下,这两个地址的网络位:192.168.1段网络和192.168.2段网络,分别就成了两个网络。意味着这两个地址不可以通信。

我们是如何计算呢?规定了IP地址和掩码进行与运算后来确定是否在同一网段。与运算规则:1与1等于1,1与0=0,0与0=0。

以192.168.1.0/255.255.255.0和192.168.2.0/255.255.255.0为例

对比是否在同一网段,我们就不用列出主机位了,只需列出网络位,
192.168.1     =   1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 1
255.255.255   =   1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
经过与运算:   =   1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 1

192.168.2.    =   1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 1 0
255.255.255   =   1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
经过与运算     =   1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 1 0

那么与运算出的结果,11000000.10101000.00000001,和11000000.10101000.00000010,很明显不一致,所以他们代表了各自的网段。


在来说说主机位:192.168.1.0/255.255.255.0,主机位的范围0-255,256个可用地址,是如何计算出来的呢?

这里只列出主机位,二进制我们都知道,逢1进位。
192.168.1.0   =  0 0 0 0 0 0 0 0      >主机位的最后8位,掩码确定了能变动的数字只有后8位。前24位不变。
192.168.1.1   =  0 0 0 0 0 0 0 1      >1
192.168.1.2   =  0 0 0 0 0 0 1 0      >2
192.168.1.3   =  0 0 0 0 0 0 1 1      >2+1=3
192.168.1.4   =  0 0 0 0 0 1 0 0      >4
192.168.1.5   =  0 0 0 0 0 1 0 1      >4+1=5
........................
192.168.1.253 =  1 1 1 1 1 1 0 1      >128+64+32+16+8+4+1=253 
192.168.1.254 =  1 1 1 1 1 1 1 0      >128+64+32+16+8+4+2=254
192.168.1.255 =  1 1 1 1 1 1 1 1      >128+64+32+16+8+4+2+1=255 

主机位就是这么推导出来的。算就是这么算的。所以,一个C类地址的网段,每个网段它只能容纳255个可用IP。

IP通信又规定了,每个网段的第一个IP为网络地址,最后一位为广播地址。都是设备保留地址。

所以,192.168.1.0/255.255.255.0这个C类网段地址真正可以分配给主机的IP:192.168.1.1-192.168.1.254

——————————————————————————————————————————————————————

了解了C类地址,再来看看B类地址和A类地址。

C类很简单,一眼望去就知道容纳的IP范围,可分配给主机使用的IP范围。

那么B类地址如何计算呢?B类地址规定的掩码255.255.0.0,所以说,网络位变少了,增大了主机位,意味着可分配给终端的IP更多了。

以172.16.0.0/255.255.0.0。看看主机位有多少?注意观察关键的节点

                            主机位
172.16.0.0    = 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0     >0
172.16.0.1    = 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1     >1
172.16.0.2    = 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 1 0     >2
172.16.0.3    = 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 1 1     >2+1=3
..........................................
172.16.0.255  = 0 0 0 0 0 0 0 0 . 1 1 1 1 1 1 1 1     >128+64+32+16+8+4+2+1=255
172.16.1.0    = 0 0 0 0 0 0 0 1 . 0 0 0 0 0 0 0 0     >1.0
172.16.1.1    = 0 0 0 0 0 0 0 1 . 0 0 0 0 0 0 0 1     >1.1
............................................
172.16.1.255  = 0 0 0 0 0 0 0 1 . 1 1 1 1 1 1 1 1     >1. 128+64+32+16+8+4+2+1=255     1.255
172.16.2.0    = 0 0 0 0 0 0 1 0 . 0 0 0 0 0 0 0 0     >2.0
172.16.2.1    = 0 0 0 0 0 0 1 0 . 0 0 0 0 0 0 0 1     >2.1
..........................................
172.16.254.254= 1 1 1 1 1 1 1 0 . 1 1 1 1 1 1 1 0     >128+64+32+16+8+4+2=254. 128+64+32+16+8+4+2=254   254.254
172.16.254.255= 1 1 1 1 1 1 1 0 . 1 1 1 1 1 1 1 1     >128+64+32+16+8+4+2=254. 128+64+32+16+8+4+2+1=255  254.255
172.16.255.0  = 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0     >128+64+32+16+8+4+2+1=255. 0         255.0
...........................................
172.16.255.255 = 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1    >255.255

中间省略了很多步骤,可以看出B类地址容纳的IP地址在C类256的基础上又翻倍了。

前面提到的网络IP和广播IP,如首位192.168.1.0和192.168.1.255,在B类地址中,0和255出现的时候,并不一定就代表是网络位和主机位,在分解中的172.16.0.255和172.16.1.0,它们只是主机可分配的IP地址。

所以172.16.0.0的可用IP范围是:172.16.0.0-172.16.255.255,网络IP:172.16.0.0,广播IP:172.16.255.255

C类地址只有8位主机位。那么就是2的8次方=256除去首尾=254可用主机。
B类地址有16位主机位,就是2的16次方-2=65536-2=65534个可用主机。
A类地址有24位主机位,就是2的24次方-2=16777214个可用主机。

————————————————————————————————————————————————————

其他

地址的规范:
192.168.1.1/255.255.255.0,这是一个标准的C类主机地址,可以简写为:192.168.1.1/24
172.16.0.1/255.255.0.0,这是一个标准的B类地址,可以简写为:172.16.0.0/16
10.0.0.0/255.0.0.0,这是一个标准的A类地址,可以简写为:10.0.0.0/8

如果出现192.168.1.0/24,那么这个地址代表的是,192.168.1.0网段的意思。如果出现192.168.1.5/24,那么这个地址代表的是,192.168.1.5的主机IP。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值