怎么判断任意两台计算机的ip地址属于同一个网络?
判断两台或以上计算机的ip是否属于同一个网络有一下几种方法:
第一种方法:打开电脑按下win+R键,输入cmd点击确定,输入ipconfig 敲回车,即可找到IP地址 。
return 0;
}//if
// 转换为string (自己习惯) //初始化
/*
if (pcIp1 == NULL || pcIp2 == NULL || pcSubNetworkMask == NULL){
return 0;
}//
string ip1(pcIp1);
string ip2(pcIp2);
string net(pcSubNetworkMask);
*/
vector<int> ip1Vec;
vector<int> ip2Vec;
vector<int> netVec;
int result, result2;
// ip 子网掩码 输入合法
if (CheckIP(ip1, ip1Vec) && CheckIP(ip2, ip2Vec) && CheckIP(net, netVec))
{
【怎么判断任意两台计算机的ip地址属于同一个网络?】for (int i = 0; i < 4; ++i){
result = ip1Vec[i] & netVec[i];//4个
result2 = ip2Vec[i] & netVec[i];//4个
if (result != result2)
{
return 2;//2:IP1与IP2不属于同一子网络
}//if
}//for
}//if
else
{
return 1;// 1:IP地址或子网掩码格式非法;
}//else
return 0; //0:IP1与IP2属于同一子网络;
}
————————————————
原文链接:https://blog.csdn.net/q286989429/article/details/50598968
其他网友观点一零chain解答
其实这个问题也简单
通过计算得到网络号,如果相同则在同一网段,不同则不在同一网段 。
掩码和IP的二进制式进行“与”运算,1和1=1 1和0=0 0和0=0 。
子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据 。
判断是否处于同一子网的简单易懂法:
1、打开网络邻居,查看工作组计算机,如果在里面能看到对方的计算机名称 。那么两台电脑同属于一个局域网 。
2、连接同个交换机或者路由器,而且都能上网,那么肯定是同个局域网 。
3、用局域网查看工具来查,出现的电脑为同个局域网 。
如果是在b类网的基础上,就不用看160.162段了,就看第三段,192转换成2进制就是11000000,说明第三段的前2位是网络号;
再看2个ip,将他们的第三段转换成2进制,分别是00000011和10101100,看他们的前面2位,如果一样的话就是处于同一个子网,显然这2个ip前面2位不一样,所以他们不在同一个子网 。
专业知识计算法:
把两台电脑的IP地址与子网掩码转成二进制,然后相应位进行相与运算,得出的结果相同(结果再转成10进制更方便判断),就是属于同一子网 。
相与运算是两个条件同时为1结果才为1,否则为0(1与1=1,1与0=0,0与0=0) 。
文章插图
文章插图
文章插图
文章插图
文章插图
文章插图
推荐阅读
- 手抓饭是什么地方的菜,怎么做?
- 第一次约会女生带闺蜜该怎么应对
- 怎么发展到和女生发生关系?
- 深圳到潮汕怎么玩,深圳去潮汕路线推荐,深圳出发潮汕旅游攻略
- 米饭煮软了怎么再煮硬
- 日本箱根怎么玩,日本箱根游玩攻略,日本箱根景点推荐
- 结婚遇到下雨天会有什么问题?要怎么应对
- 探探总是匹配不到人该怎么办?教你匹配的秘诀!
- 两千元出头价位手机怎么选?
- 火爆牛肚怎么做好吃?