大家好,又见面了,我是你们的朋友全栈君。
这是在做网络题时总结的一些经验和见解,略显粗糙,主要是记一下常用的ABC3类地址和相关的子网号,主机号的计算
ip地址
在主机或路由器中存放的IP地址(IPv4)都是32位的二进制代码。它包含了网络号(net-id)和主机号(host-id)两个独立的信息段。网络号用了标识主机或路由器所连接到的网络,主机号用来标识该主机或路由器。
为了提高可读性,每8位二进制数用一个十进制数(0~255)表示,并以小数点分隔。这种标记IP地址的方法称为“点分十进制记法”,IP地址的网络号在左边,主机号在右边。
根据固定的网络号和主机号位数的不同,IP地址分成了五类:A类、B类、C类、D类和E类。其中最常用的是A类、B类和C类。
1.A类地址
网络号仅仅占8位,主机号占24位。
特点:
前1位为0
网络号的范围是:1.0.0.0~126.0.0.0
最大网络数127个(1~126是可用的,127作为本地软件环回测试本主机之用)
网络中最大主机数是1 677 214(即224-2)个。减去2个的原因是去掉一个主机号全0的地址(网络地址)和主机号全1的地址(广播地址)
2.B类地址
网络号占16位,主机号占16位
特点:
前2位是10
网络号的范围:128.0.0.0~191.255.0.0
最大网络数16384
网络中最大的主机数是65534(216-2)个
3.C类地址
网络号占24位,主机号占8位
特点:
前3位是110
网络号的范围:192.0.0.0~223.255.255.0
可用网络数为2 097 152
网络中最大的主机数254(28-2)个
子网划分
为了 提高IP地址的使用效率,可以将一个网络划分为多个子网。采用借位的方法,从主机最高位开始借位变为新的子网络,剩余部分仍然为主机位,使本来应当属于主机号的部分改变为网络号,这样就实现了划分子网的目的。借位使得IP地址的结构分为3部分:网络位、子网位和主机位。
网络位 + 主机位 ——>网络位+子网位 + 主机位
假设某公司有一个C类地址202.110.1.0,现将主机字段的前3位作为子网号,后5位作为主机号,这样该公司最多可划分8(23)个子网,每个子网有30(25-2)个主机地址可以分配。
子网数=2x个(X=借位数)
主机数=2y-2个(Y=主机位)
划分子网的几个捷径:
1.你所选择的子网掩码将会产生多少个子网?:2的x次方-2(x代表掩码位,即2进制为1的部分)
2.每个子网能有多少主机?: 2的y次方-2(y代表主机位,即2进制为0的部分)
3.有效子网是?:有效子网号=256-10进制的子网掩码(结果叫做block size或base number)
4.每个子网的广播地址是?:广播地址=下个子网号-1
5.每个子网的有效主机分别是?:忽略子网内全为0和全为1的地址剩下的就是有效主机地址.最后有效1个主机地址=下个子网号-2(即广播地址-1)
下面看具体实例:
C类地址例子:网络地址192.168.10.0;子网掩码255.255.255.192(/26)
1.子网数=2*2-2=2
2.主机数=2的6次方-2=62
3.有效子网数:block size=256-192=64;所以第一个子网为192.168.10.64,第二个为192.168.10.128
4.广播地址:下个子网-1.所以2个子网的广播地址分别是192.168.10.127和192.168.10.191
5.有效主机范围是:第一个子网的主机地址是192.168.10.65到192.168.10.126;第二个是192.168.10.129到192.168.10.190
B类地址例子1:网络地址:172.16.0.0;子网掩码255.255.192.0(/18)
1.子网数=2*2-2=2
2.主机数=2的14次方-2=16382
3.有效子网?:block size=256-192=64;所以第一个子网为172.16.64.0,最后1个为172.16.128.0
4.广播地址:下个子网-1.所以2个子网的广播地址分别是172.16.127.255和172.16.191.255
5.有效主机范围是:第一个子网的主机地址是172.16.64.1到172.16.127.254;第二个是172.16.128.1到172.16.191.254
B类地址例子2:网络地址:172.16.0.0;子网掩码255.255.255.224(/27)
1.子网数=2的11次方-2=2046(因为B类地址默认掩码是255.255.0.0,所以网络位为8+3=11)
2.主机数=2的5次方-2=30
3.有效子网?:block size=256-224=32;所以第一个子网为172.16.0.32, 最后1个为172.16.255.192
4.广播地址:下个子网-1.所以第一个子网和最后1个子网的广播地址分别是172.16.0.63和172.16.255.223
5.有效主机范围是:第一个子网的主机地址是172.16.0.33到172.16.0.62;最后1个是172.16.255.193到172.16.255.223
主机号、网络号的计算
当知道一个IP地址,可以通过子网掩码来确定网络号(子网号)和主机号
给定的IP地址为192.55.12.120,子网掩码为255.255.255.240
子网号的计算:
IP地址 | 192.55.12.120 | 转换为二进制 | 11000000 | 00110111 | 00001100 | 01111000 |
子网掩码 | 255.255.255.240 | 转换为二进制 | 11111111 | 11111111 | 11111111 | 11110000 |
逐位与(AND)运算: | 11000000 | 00110111 | 00001100 | 01110000 | ||
子网号 : | 192 | 55 | 12 | 112 |
将子网掩码取反再与IP地址与(AND)运算后得到的结果即为主机号
IP地址 | 192.55.12.120 | 转换为二进制 | 11000000 | 00110111 | 00001100 | 01111000 |
子网掩码 | 255.255.255.240 | 取反转换为二进制 | 00000000 | 00000000 | 00000000 | 00001111 |
逐位与(AND)运算: | 00000000 | 00000000 | 00000000 | 00001000 | ||
主机号 : | 0 | 0 | 0 | 8 |
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/152557.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...