判断两个IP地址(ipv4)是否在同一个网段

我们通常会遇到的ip地址是这样的:
ip地址:192.168.227.205 子网掩码:255.255.255.0
ip地址:192.168.226.202 子网掩码:255.255.255.0

192.168.227.205转化为二进制:
11000000  10101000   11100011   11001101
 255.255.255.0子网掩码转化为二进制:
 11111111    11111111   11111111     00000000
 两者进行与运算得到如下二进制值:
 11000000   10101000   11100011   00000000
 转为二进制得到网段:
 192.168.227.0

192.168.226.202转化为二进制:
11000000  10101000   11100010   11001010
 255.255.255.0子网掩码转化为二进制:
 11111111    11111111   11111111     00000000
 两者进行与运算得到如下二进制值:
11000000   10101000   11100010   00000000
转为二进制得到网段:
192.168.226.0

结果:
很显然192.168.227.0和192.168.226.0不是一个网段,所以他们之间是ping不通的即不能相互通信

下面我们把子网掩码换成255.255.252.0再来判断下:
ip地址:192.168.227.205 子网掩码:255.255.252.0
ip地址:192.168.226.202 子网掩码:255.255.252.0

192.168.227.205转化为二进制:
11000000  10101000   11100011   11001101
 255.255.252.0子网掩码转化为二进制:
 11111111    11111111   11111100     00000000
 两者进行与运算得到如下二进制值:
 11000000   10101000   11100000   00000000
 转为二进制得到网段:
 192.168.224.0

192.168.226.202转化为二进制:
11000000  10101000   11100010   11001010
 255.255.255.0子网掩码转化为二进制:
 11111111    11111111   11111100     00000000
 两者进行与运算得到如下二进制值:
11000000   10101000   11100000   00000000
转为二进制得到网段:
192.168.224.0

结果:
很显然这次他们是在同一个网段,所以他们之间是可以ping通的即能相互通信

结论:
所以判断两个ip是不是在同一个网段要结合ip本身和子网掩码才能判断。
通常情况下我们子网掩码是255.255.255.0(一个数字表示:24)的时候只要看前三段,如果相同即在同一个网段,子网掩码是255.255.252.0(一个数自表示:22),就不能看前三段了,需要通过上述方法计算一下,其他子网掩码,大家有兴趣也可以算一下。

比如我这里使用NAT网络模式:
主机ip地址设置成192.168.224.88,子网掩码是255.255.252.0,在虚拟机装系统时候,只要虚拟机系统ip的地址的前三段是192.168.224、192.168.225、192.168.226、192.168.227的(ip最后一段自己随便定义,0和255不能写,网关排除外),那么它们都是在同一个网段的,即可以相互通信,也可以访问外网!!!

下面是我自己的IP设置截图,仅供参考:
宿主机VMnet8 ipv4设置
在这里插入图片描述
在这里插入图片描述
VMware虚拟机设置如下:
在这里插入图片描述
下面来测试192.168.224.x,192.168.225.x,192.168.226.x,192.168.227.x几个相互之间ping通测试:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

下雨天的太阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值