教你一个手工判断的方法,然后你就知道程序如何判断了。  
   
  你把你的IP地址表达成   二进制共有32位,再把子网掩码表达成二进制共有32位,  
   
  IP1:01010110110101010101011010101010  
  IP2:01010110110101010101011011110011  
  Mask:11111111111111111111111110000000  
   
  你只需要看掩码中是“1”的那些位置,对应的两个IP地址的位是否相等,全部相等就是同一网段;有一个不等,就不是同一网段。

要想在同一网段,必需做到网络标识相同,那网络标识怎么算呢?各类IP的网络标识算法都是不一样的。A类的,只算第一段。B类,只算第一、二段。C类,算第一、二、三段。
  算法只要把IP和子网掩码的每位数AND就可以了。
  AND方法:0和1=0 0和0=0 1和1=1
  如:And 192.168.0.1,255.255.255.0,先转换为二进制,然后AND每一位
  IP      11000000.10101000.00000000.00000001
  子网掩码    11111111.11111111.11111111.00000000
  得出AND结果  11000000.10101000.00000000.00000000
  转换为十进制192.168.0.0,这就是网络标识,
  再将子网掩码反取,也就是00000000.00000000.00000000.11111111,与IP AND
  得出结果00000000.00000000.00000000.00000001,转换为10进制,即0.0.0.1,
  这0.0.0.1就是主机标识。要想在同一网段,必需做到网络标识一样。

  我们再来看看这个改为默认子网掩码的B类IP
  如IP:188.188.0.111,188.188.5.222,子网掩码都设为255.255.254.0,在同一网段吗?
  先将这些转换成二进制
  188.188.0.111 10111100.10111100.00000000.01101111
  188.188.5.222 10111100.10111100.00000101.11011010
  255.255.254.0 11111111.11111111.11111110.00000000
  分别AND,得
  10111100.10111100.00000000.00000000
  10111100.10111100.00000100.00000000
  网络标识不一样,即不在同一网段。
  判断是不是在同一网段,你会了吧,下面,我们来点实际的。
  一个公司有530台电脑,组成一个对等局域网,子网掩码和IP设多少最合适?
  子网掩码不说了,前面算出结果来了11111111.11111111.11111100.00000000,也就是255.255.252.0
  我们现在要确定的是IP如何分配,首先,选一个B类IP段,这里就选188.188.x.x吧
  这样,IP的前两段确定的,关键是要确定第三段,只要网络标识相同就可以了。我们先来确定网络号。(我们把子网掩码中的1和IP中的?对就起来,0和*对应起来,如下:)
  255.255.252.0 11111111.11111111.11111100.00000000
  188.188.x.x  10111100.10111100.??????**.********
  网络标识   10111100.10111100.??????00.00000000
  由此可知,?处随便填(只能用0和1填,不一定全是0和1),我们就用全填0吧,*处随便,这样呢,我们的IP就是
  10111100.10111100.000000**.********,一共有530台电脑,IP的最后一段1~254可以分给254台计算机,530/254=2.086,采用进1法,得整数3,这样,我们确定了IP的第三段要分成三个不同的数字,也就是说,把000000**中的**填三次数字,只能填1和0,而且每次的数字都不一样,至于填什么,就随我们便了,如00000001,00000010,00000011,转换成二进制,分别是1,2,3,这样,第三段也确定了,这样,就可以把IP分成188.188.1.y,188.188.2.y,188.188.3.y,y处随便填,只要在1~254范围之内,并且这530台电脑每台和每台的IP不一样,就可以了。

如判断这两个IP是否属于同一网段?相关推荐

  1. 如何判断两个IP地址是不是同一个网段(超实用)

    IP地址 IP地址被用来给Internet上的电脑一个编号.大家日常见到的情况是每台联网的PC上都需要有IP地址,才能正常通信.我们可以把"个人电脑"比作"一台电话&qu ...

  2. 判断两个IP是否在同一网段

    相信不只我一个人有过这样的想法:只要IP的前三段相同,就是在同一网段了.真相不是这样的. IP地址根据网络ID的不同分为5种类型,A类地址.B类地址.C类地址.D类地址和E类地址. 在IP地址3种主要 ...

  3. 如何判断两个IP是否属于同网段

    最近在开发中遇到了一个问题,pc用手机连的同一个wifi,但手机无法访问pc上启动的本地前端服务; 这里是pc端的ip信息; 这是手机的ip: pc端的ip地址为 192.168.1.120 子网掩码 ...

  4. 【shell】shell-判断两个ip是否在同一个网段

    目录 判断脚本 原理 如何判断两个IP是否在同一网段 判断脚本 (转自:http://t.csdn.cn/3UmL3) 原理 ip和掩码做与计算.如果结果相同,则证明两个ip在同一个网段 #!/bin ...

  5. shell-判断两个ip是否在同一个网段

    原理 ip和掩码做与计算.如果结果相同,则证明两个ip在同一个网段 代码如下 #!/bin/bashIPPattern='^(\<([0-9]|[1-9][0-9]|1[0-9][0-9]|2[ ...

  6. 两个ip是否在同一网段?

    转载自知乎: 有两台设备,设备A:IP 172.33.4.101/16 设备B:IP 172.33.4.106/24 那么设备A的网络号是:172.33 设备B的网络号是:172.33.4 显然不在一 ...

  7. 如何判断两个IP地址是不是处于同一网段?

    个人理解,欢迎指正. 一.要判断两个IP地址是不是在同一个网段,就将它们的IP地址分别与子网掩码做与运算,得到的结果-->网络号,如果网络号相同, 就在同一子网,否则,不在同一子网. 例:假定选 ...

  8. 判断两个IP大小关系及是否在同一个网段中

    功能点 判断某个IP地址是否合法 判断两个IP地址是否在同一个网段中 判断两个IP地址的大小关系 知识准备 IP协议 子网掩码 Java 正则表达式 基本原理 IP地址范围 0.0.0.0-255.2 ...

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

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

最新文章

  1. Redis数据介绍与指令大全
  2. Podman中如何运行一个 Linux 虚拟机?
  3. Asynctask源码分析
  4. c语言数组最大元调换,c语言数组元素交换有关问题,请高手过来看看
  5. c语言小学生算法,急求:C语言小学生算法练习软件实现的任务:面向小学生,随机选择两个整数进行加、减、乘、除,要求学生解答。设计内容:1、电...
  6. tcl脚本学习十一:proc应用 (带默认参数)
  7. pandas如何统计所有列的空值,并转化为list?
  8. Missing artifact log4j:log4j:bundle:1.2.17
  9. 1.3tf的varible\labelencoder
  10. less is more,so 只记 less
  11. 【Node.js学习笔记五】npm(Node包管理器)命令行选项
  12. 使用Zuul构建API Gateway
  13. “const char*”类型的值不能用于初始化“char”类型的实体
  14. AlertManager配置参数解析
  15. 计算机二进制除法除数为0,怎么做二进制数的除法运算
  16. Clion设置背景图片
  17. Ubuntu16 wine安装迅雷
  18. git 修改倒数二个 commit
  19. 计算机专业要不要考研
  20. 基于cesium的地形开挖地形剖切

热门文章

  1. @Java中实现定时任务
  2. 使用Insignia SSPS做手机配置管理
  3. java项目问题 The content of element type servlet must match (icon?,servlet-name,display-name?,descrip
  4. html手机登陆页面无法显示,192.168.1.1手机登陆页面打不开的解决办法
  5. 港科百创 | 思特威创始人徐辰校友:始于兴趣,忠于热爱
  6. 健身 | 无器材如何练手臂肌肉?最简单几个动作
  7. 在高铁上写代码,还被抖音网红跟拍
  8. html九图拼图游戏代码,基于Vue.js实现数字拼图游戏
  9. Web Service Case Study: 认证考试申请服务
  10. Print.js实现打印pdf,HTML,图片(可设置样式可分页)