从IP地址和子网掩码判断该地址属于哪个网段

如何从IP地址和子网掩码判断该地址属于哪个网段?

需要给出2个参数:IP地址和子网掩码。

提问:192.168.0.101/26 所属网段是什么?

分析:​

192.168开头的地址属于C类地址,默认掩码是255.255.255.0;默认是 /24位掩码;

但本例是26位掩码,说明掩码在C类地址的基础上向右移动了2位,也就是从主机位拿走了2位成为网络位。

为了便于计算,写为2进制:

用主机地址和网络掩码做"与"运算,其实就是把掩码位对应的主机位抄下来,其余位全归0。

计算结果:

1、192.168.0.101/26 归属192.168.0.64网段。

2、该网段是子网​(因为从C类边界向右移动了2位,增加了网络数量)

3、全部的子网是:

192.168.0.0 192.168.0.64(本例IP归属网段) 192.168.0.128 192.168.0.192

提问:192.168.0.101/12 所属网段是什么?

计算:

经过以上运算得出了结论:192.168.0.101/12属于网段192.160.0.0/12。

上一个例子说192.168.0.0网段属于C类地址,这就相当于已经给出了默认的掩码 /24。

但现在已经是CIDR的时代,不再把IP归属于某"类"地址,也就不再有默认的掩码,若要确定掩码的边界,必须要明确给出掩码后缀,这就导致一个问题:虽然能判断出所属网段,但无法得知该网段是一个独立的网段(或是超网),还是上级网段划分的子网。

比如本例,192.168应属于C类网段,默认掩码是 /24,但 /12却又非C类网段的默认掩码。

那么这个网段到底是不是子网呢?

最直接的方法是询问网管这是不是子网。。。

或者,要给出另外2个条件才能判断是不是子网:

原始网络(上一级网络)的前缀长度

必须是等分子网(若是非等分子网,还是无法得出子网数量和范围)

现在给出这2个条件:

原始网络(上一级网络)的前缀长度是 /8

是等分子网

分析:

原始网络的前缀长度是 /8,现在的前缀长度是 /12,这就说明划分了子网,因为从主机位拿走了4位作为网络位,增加了子网的数量,192.168.0.101/12 属于众多子网之一。

因为从主机位拿走了4位作为网络位,可等分为16个子网,而且给出的条件也说明了的确是等分子网,这样就得出了16个子网的范围:

计算结果:

1、192.168.0.101/12属于192.160.0.0/12网段

2、该网段是子网(因为从/ 8向右移动了4位变为 /12,增加了网络数量)

3、上级网段的所有子网范围如下:

相关推荐
为何创造硅基生物1 天前
ESP32S3的RGB屏幕漂移问题
网络
好运的阿财1 天前
process 工具与子agent管理机制详解
网络·人工智能·python·程序人生·ai编程
周杰伦fans1 天前
C# required 关键字详解
开发语言·网络·c#
洛水水1 天前
深入理解网络编程核心:Reactor、IOCP 与异步 IO 模型详解
网络·iocp
favour_you___1 天前
epoll惊群问题与解决
服务器·网络·tcp/ip·epoll
北方的流星1 天前
华三网络设备的路由重定向配置
运维·网络·华三
.select.1 天前
TCP 3
服务器·网络·tcp/ip
阿捏利1 天前
详解网络协议(十六)UDP协议
网络·网络协议·udp
芯智工坊1 天前
第13章 Mosquitto监控与日志管理
前端·网络·人工智能·mqtt·开源
派大星酷1 天前
Cookie、Session、Token、JWT 原理 + 流程 + 区别 + 实战
java·网络