IP地址详解及计算

首先,我们引入一个概念——ip地址。我们都知道,每台联网的计算机都需要有一个统一规定格式的地址,即ip地址。连到同一个网络中的计算机需要分配不同的ip地址,它是网络上电脑的唯一识别标志。如果把计算机比作一台电话,那么ip地址就相当于电话号码。

IP地址详解

ip地址是一个32位的二进制数,一般将其写成4个十进制数数字字段,中间用圆点隔开,书写形式为:xxx.xxx.xxx.xxx 其中每个字段xxx的有效取值范围是0-255(称为点分十进制形式)

32位二进制的意思是指IP地址在计算机里是用四个字节存储的,每个字节是8位二进制位,四个数总共32位。

如某台服务器的ip地址为192.168.88.21,它对应的32位二进制数为:11000000  10101000  01011000  00010101


IP地址逻辑上的组成

ip地址在逻辑上被分为两个部分:网络号和主机号。 地址中的前若干位表示所在的网络地址,剩下的若干位标识主机地址。

在计算机网络中经常需要计算联网计算机所在的网络地址、主机地址、广播地址等信息。

IP地址详解及计算
子网掩码作用是将某个IP地址划分成网络地址和主机地址两个部分。
子网掩码的组成:
①同ip地址一样,子网掩码是由长度为32位二进制组成的一个地址。
②子网掩码32位与IP地址32位相对应,前面若干位为1,后面的其他位为0
③网络号在ip地址对应着子网掩码中为1的部分,而主机号对应着子网掩码为0的部分。
例如:11111111 11111111 11111111 10000000  注:左边连续的1的个数代表网络号的长度,右边连续的0的个数代表主机号的长度。
写成点分十进制的形式为255.255.255.128
子网掩码的表示方法
①点分十进制表示法
二进制换十进制,每8位用点号隔开。
例如:子网掩码二进制 11111111 11111111 11111111 00000000 表示为255.255.255.0
②CIDR斜线记法
IP地址/n
例:192.168.1.100/24 其子网掩码表示为255.255.255.0 
二进制表示为11111111 11111111 11111111 00000000 
例:192。168.1.100/20 其子网掩码表示为255.255.240.0
二进制表示为11111111 11111111 11110000 00000000
从而得出,例1中有24个1,例二中20个1,所以n是这么来的,运营商ISP常用这样的方法给客户分配ip地址。
注:n为1到32的数字,表示子网掩码中网络号的长度,通过n的个数确定子网的主机数
2^(32-n)-2 (这里减2)是因为考虑到:主机位全为0时表示本网络的网络地址,主机位全为1时表示本网络的广播地址,这是两个特殊地址

缺省子网掩码

也叫默认子网掩码,即未划分子网,对应的网络号位都置1,主机号都置0

未做子网划分的ip地址:网络号+主机号

A类网络缺省子网掩码:255.0.0.0 用CIDR表示为/8

B类网络缺省子网掩码:255.255.0.0 用CIDR表示为/16

C类网络缺省子网掩码:255.255.255.0 用CIDR表示为/24

子网掩码与IP地址的关系

子网掩码是用来判断任意两台主机的ip地址是否属于同一网络的依据。

就是拿双方主机的ip地址和自己主机的子网掩码做位与运算,如果结果为同一网络,就可以直接通信。

And按位与运算:

与运算是计算机中一种基本的逻辑运算方式,符号表示为&,也可以表示为and。

参加运算的两个数据,按二进制位进行”与“运算。

运算规则:0&0=0;0&1=0;1&0=0;1&1=1;

即:两位同时为1,结果才为1,否则为0.

如何根据ip地址和子网掩码,计算网络地址:

①将ip地址与子网掩码转换为二进制数。

②将二进制形式的ip地址与子网掩码做”与“运算。

③将得出的结果转化为十进制,便得到网络地址。

IP地址详解及计算

网络地址的计算:通过IP地址和子网掩码进行位与操作获得。

主机地址的计算:通过对子网掩码进行位非操作后再和IP地址位与获得。

广播地址的计算:网络地址和子网掩码位非的位或结果。

作用:专门用于同时向网络中的所有工作站进行发送的一个地址。

它通过将IP地址中网络号右边的表示主机部分的二进制位全部替换为1得到。

 

 

IP地址详解及计算

上一篇:Docker网络连通


下一篇:Docker进阶:容器卷、DockerFile、Docker网络原理