要判断两个IP地址是不是在同一个网段,就将它们的IP地址分别与子网掩码做与运算,得到的结果一网络号,如果网络号相同,就在同一子网,否则,不在同一子网。
例:假定选择了子网掩码255.255.254.0,现在分别将上述两个IP地址分别与掩码做与运算,如下所示:  www.2cto.com  
211.95.165.24 11010011 01011111 10100101 00011000
255.255.254.0 11111111 11111111 111111110 00000000
      与的结果是: 11010011 01011111 10100100 00000000
 
211.95.164.78 11010011 01011111 10100100 01001110
255.255.254.0 11111111 11111111 111111110 00000000
      与的结果是: 11010011 01011111 10100100 00000000 
 
(注:)And:与运算。只有同为真时才为真。
True and False 结果为False.
True and True 结果为True;
Flase and False 结果为False;
 
 
 
可以看出,得到的结果(这个结果就是网络地址)都是一样的,因此可以判断这两个IP地址在同一个子网。
 
例如:有一个C类地址为:192.9.200.13,按其IP地址类型,它的缺省子网掩码为:255.255.255.0,则它的网络号和主机号可按如下方法得到:
 
第1步,将IP地址192.9.200.13转换为二进制11000000 00001001 11001000 00001101
第2步,将子网掩码255.255.255.0转换为二进制11111111 11111111 11111111 00000000
第3步,将以上两个二进制数逻辑进行与(AND)运算,得出的结果即为网络部分。“11000000 00001001 11001000 00001101”与“11111111 11111111 11111111 00000000”进行“与”运算后得到“11000000 00001001 11001000 00000000”,即“192.9.200.0”,这就是这个IP地址的网络号,或者称“网络地址”。  www.2cto.com  
第4步,将子网掩码的二进制值取反后,再与IP地址进行与(AND)运算,得到的结果即为主机部分。如将“00000000 00000000 00000000 11111111(子网掩码的取值)反”与“11000000 00001001 11001000 00001101”进行与运算后得到“00000000 00000000 00000000 00001101”,即“0.0.0.13”,这就是这个IP地址主机号(可简化为“13”)。
 
主机位中有3位被划为“网络标识号”占用,因网络标识号应全为“1”,所以主机号对应的字节段为“11100000”。转换成十进制后为224,这就最终确定的子网掩码。如果是C类网,则子网掩码为255.255.255.224;如果是B类网,则子网掩码为255.255.224.0;如果是A类网,则子网掩码为255.224.0.0。

如何判断两个IP地址是不是在同一个网段的更多相关文章

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

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

  2. python 判断两个ip地址是否属于同一子网

    python 判断两个ip地址是否属于同一子网 """ 判断两个IP是否属于同一子网, 需要判断网络地址是否相同 网络地址:IP地址的二进制与子网掩码的二进制地址逻辑&q ...

  3. 判断两个IP地址是不是属于同一子网的方法

    一个IP地址有三种写法: 第一种,单个IP,如192.168.55.28 第二种,IP/子网掩码,如192.168.55.28/255.255.255.0 第三种,IP/子网掩码长度,如192.168 ...

  4. [置顶] 如何判断两个IP大小关系及是否在同一个网段中

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

  5. 判断两个IP是否属于同一子网

    描述 子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据.子网掩码与IP地址结构相同,是32位二进制数,其中网络号部分全为“1”和主机号部分全为“0”.利用子网掩码可以判断两台主机是否 ...

  6. 判断两个IP是否处于同一子网(网段)

    如何去判断A和B两个IP是否在同一网段,假如有如下两个IP地址和子网掩码,判断他们是否是同一个网段的IP地址的方法: A IP:202.194.128.9 B IP:202.194.128.14 子网 ...

  7. 如何判断两个IP是否在同一网段

    下来举例说明,如何去判断A和B两个IP是否在同一网段. A IP:202.194.128.9 B IP:202.194.128.14 子网掩码:255.255.255.0 1.把A和B的地址转换为二进 ...

  8. IP地址,子网掩码,网段表示法,默认网关,DNS服务器详解,DNS域名设计

    本文参考:<计算机网络: IP地址,子网掩码,网段表示法,默认网关,DNS服务器详解> IP地址 概述 计算机要实现网络通信,就必须要有一个用于快速定位的网络地址.IP地址就是计算机在网络 ...

  9. python学习-判断是否是IP地址

    1.使用正则表达式 首先分析IP地址的组成,十进制的合法IP地址由32位数字组成 使用.分割开 每个分组可出现的情况: 第一个分组: 1-9:一位数字 10-99:两位数字 100-199:三位数字且 ...

随机推荐

  1. linux内核源码在线浏览

    1.https://elixir.bootlin.com  (只能搜索函数和宏定义,功能单一) 2.https://lxr.missinglinkelectronics.com (比第一个功能多一些, ...

  2. 【转】Linux系统平均负载3个数字的含义

    文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作. 越来越多人开始接触Linux操作系统,从VPS到无线路由的刷机系统(如OpenWR ...

  3. String StringBuilder StringBuffer 对比 总结得非常好

    转自:http://www.iteye.com/topic/522167 作者:每次上网冲杯Java时,都能看到关于String无休无止的争论.还是觉得有必要让这个讨厌又很可爱的String美眉,赤裸 ...

  4. 使用 shinydashboard

    除了 shiny 扩展包提供的函数之外,RStudio 也开发了一个 shinydashboard 扩展包 (http://rstudio.github.io/shinydashboard/),它呈现 ...

  5. Eclipse.修改项目的JDK版本

    1.我实际使用过程中,只是修改了 项目右键-->Properties-->左侧选择"Java Compiler" -->右侧的"JDK Complian ...

  6. [转] oracle 监听

    oracle 监听 启动监听:lsnrctl start 查看监听:lsnrctl status 停止监听:lsnrctl stop 1.oracle 数据服务器包括:实例进程和数据库: 实例进程包括 ...

  7. css实现心形图案

    用1个标签实现心形图案,show you the code; <!DOCTYPE html> <html lang="en"> <head> & ...

  8. 99%的人都理解错了HTTP中GET与POST的区别(转自知乎)

    作者:Larry链接:https://zhuanlan.zhihu.com/p/22536382来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. GET和POST是HTT ...

  9. 在jenkins和sonar中集成jacoco(一)--使用jacoco收集单元测试的覆盖率

    之前系统的持续集成覆盖率工具使用的是cobetura,使用的过程中虽然没什么问题,但感觉配置比较麻烦,现在准备改用jacoco这个覆盖率工具来代替它.接下来我介绍一下jenkins配置jacoco,并 ...

  10. CASIO 5800P计算器游戏--猜数字游戏

    CASIO 5800P 计算器游戏--猜数字游戏原代码 我编的计算器小游戏--猜数字游戏 LbI I↙ "xxGUESS NUMBERxx xPROGRAMMER:JCHx -------- ...