IP地址是分配给连接到互联网上的每一台设备的唯一数字标识,用于网络之间相互连通。在互联网上,只有输入正确的IP地址,才能获得准确的信息。通常IP地址在计算机网络中用数字形式体现。
IP地址的构成
通常IP地址是由网络地址和主机地址两部分构成的。
网络地址:用于标识某个IP地址所属网络。
主机地址:用于标识一个网络内的某台主机。
同一网段内,不同主机间的网络号相同,但要有不同的主机号区分不同的主机。这样就可以保证即便在相互连接的网络中,每台主机的IP地址也是不同的。
IP地址的分类
IP地址通常分为A类、B类、C类、D类和E类。
A类、B类、C类由Internet NIC在全球范围内统一分配,D类、E类为特殊地址。
A类IP地址由1字节的网络地址和3字节主机地址组成;也就是说A类IP地址网络标识长度为8位,主机标识长度为24位。
B类IP地址由2字节的网络地址和2字节主机地址组成;B类IP地址中网络的标识长度为16位,主机标识的长度为16位。
C类IP地址由3字节的网络地址和1字节主机地址组成;C类IP地址中网络的标识长度为24位,主机标识的长度为8位。
D类IP地址用于组播,范围从224.0.0.0到239.255.255.255;E类IP地址用于实验研究。
类别 | IP地址范围 | 子网掩码 |
A类 | 1.0.0.1-127.255.255.254 | 255.0.0.0 |
B类 | 128.0.0.1-191.255.255.254 | 255.255.0.0 |
C类 | 192.0.0.1-223.255.255.254 | 255.255.255.0 |
IP地址的表示方式
IPv4地址由32位二进制数组成,通常用“点分十进制”表示成a.b.c.d的形式,每个数在0到255之间,由点(.)分隔。
IP地址是一个32位的二进制数,有4个字节。
IP地址最小时全部单位都为0:0.0.0.0;
IP地址最大时全部单位都为1:11111111.11111111. 11111111.1111111 ,化成十进制是255.255.255.255。
为方便日常生活中的实际运用,通常我们会将IP地址由二进制转化为十进制。
IP地址二进制和十进制之间的换算规则
二进制 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
十进制 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
二进制到十进制之间的换算
看表格不难得出换算结论,2n-1是IP地址二进制换算成十进制的公式,其中n代表二进制数的位数。
举个例子来帮助大家理解:
假设有一个1110 1010.1001 0010.0100 0001.0000 0000的IP地址,我们把它转换成十进制的表示方式:
第一节1110 1010的转换过程如下:
128+64+32+0+8+0+2+0=234
其它字节转换方式同理,
因此可得此IP地址的转换结果为:234.146.65.0
十进制到二进制之间的换算
十进制到二进制的转换通常使用“除2取余法”。将十进制数不断除以2,记录每次除法的余数,直到商为0。然后将所有余数从最后一个开始反向排列,得到的就是该十进制数对应的二进制数。
同样举个例子帮助大家理解:
假设有一个IP地址 192.168.1.1,要将其转换为二进制:
192转换为二进制是11000000
168转换为二进制是10101000
1转换为二进制是00000001(注意前面补了6个0)
1转换为二进制是00000001(同样,前面补了6个0)
因此,192.168.1.1的二进制换算结果是:11000000.10101000.00000001.00000001。
在明白如何进行IP地址二进制与十进制的换算方法后,我们要怎样确定网络号和主机号是多少呢?
我们可以通过子网掩码来判断。子网掩码是由一系列的1和0构成,可以明确告诉我们网络号和主机号在哪里分开。将IP地址与子网掩码按位与运算,得到的结果就是网络号。主机号是IP地址中未被子网掩码覆盖的部分。换句话说,它是子网掩码中对应位为0的IP地址部分。
按位与的运算规则如下:
只有当两个数的相应位都为1时,结果的相应位才为1,否则为0。
即:
1 & 1 = 1
1 & 0 = 0
0 & 1 = 0
0 & 0 = 0
计算主机号的流程:
举个例子帮助大家理解IP地址IP数据云 - 免费IP地址查询 - 全球IP地址定位平台、子网掩码、网络号和主机号的计算过程:
假设有一个C类IP地址192.168.1.65,其子网掩码仍然为255.255.255.0。
IP地址转换为二进制:
192.168.1.65 转换为二进制是 11000000 10101000 00000001 01000001;
子网掩码转换为二进制:
255.255.255.0 转换为二进制是 11111111 11111111 11111111 00000000;
执行按位与运算:
11000000 10101000 00000001 01000001 & 11111111 11111111 11111111 00000000 = 11000000 10101000 00000001 00000000;
转换为十进制得到网络号:
11000000 10101000 00000001 00000000转换为十进制是192.168.1.0;
确定主机号:
主机号是IP地址中未被子网掩码覆盖的部分,即01000001。
01000001 转换为十进制是 65,所以主机号为 65。
标签:转换,二进制,主机,基础知识,IP地址,子网掩码,十进制,科普 From: https://blog.csdn.net/m0_73740397/article/details/141892927