根据netmask快速判断是否在一个网域
natmask就是子网掩码,与ip进行与的运算,得到一个网域。
ip 由4段构成,例 172.25.45.10 每段由8位二进制组成
即 11111111.11111111.11111111.11111111这个代表的是255.255.255.255
同理 子网掩码也是由8位二进制组成。它又分为网络位和主机位。
172.25.45.10/24 表示有24个1 组成网络位 剩余 8位组成主机位。
一般情况最常见到的子网掩码是 8 即8个1 即 255.0.0.0 16个1 255.255.0.0 24个1 255.255.255.0
32个1 是广播地址 255.255.255.255
这个的计算就是二进制想十进制的转化。
明白了这个一般情况,来谈谈不一样的。举个例子由于惯性思维当我们看到
172.25.42.10/21 和 172.25.47.100/21 这两个ip是感觉就是不在一个网域,因为第三段的不想同 42和47 不一样。但事实它们在一个网段。
我们以第三段为例。 它们各自的网域应该这样计算。
21-16=5就是所有的1的数减去前两段的16个1的数就是第三段的1的个数。第三段的掩码相当于为5
42转化为8位二进制为 00101010 与 第三网段的子网掩码5个1 即 11111000 对应位置与的运算
00101010 对应十进制数是42
11111000 子网掩码
00101000 对应位与的运算得到的 网域
同理
00101111 对应十进制数是47
11111000 子网掩码 00101000 对应位与的运算得到的 网域
一个网域的判断是看它的网络位 所以在不在一个网域在这个例子中和第四段没有关系
可以看到172.25.42.10/21 和 172.25.47.100/21 是在一个网域的。
****************************************************
那如何快速的根据netmask来判断ip是否在一个网域?
172.25.42.10/21 和 172.25.47.100/21
第三段的网络位 为 21-16=5 那主机位 位 8-5=3
根据位权值得计算方法可得
1 1 1 1 1 1 1 1
128 64 32 16 8 4 2 1
3个主机位即是 4+2+1=7 5个网络位就是 128+64+32+16+8=248
由于子网掩码是 11111000 与ip进行与的运算 要想运算后在同一个网域 也就是说 ip 的前5个1 也就是网络位要一样 ,那么网络位一样的前提下, 主机位之间 的变化就是 小于等于7.
① 所以 当看到一个ip和它的子网掩码时,先计算出它的关键段的 主机位的变化,
例 9和17 10和18 11和19 它们分别在第一段和第二段 但他们的主机位是一致的
9 11111111 10000000 00000000 0000000
17 11111111 11111111 10000000 0000000
它们的关键段主机位是 127 关键段就是可以判断是否在一个网域的关键段 子网掩码 0到8 就是第一段 8到16 就是第二段 16到24 就是第三段 24到32就是第四段
② 计算出关键段的主机位 例 172.25.42.10/21 和 172.25.47.100/21 它们的关键段是第三段 主机位是 7 那么 首先判断 关键段的ip 是否小于 主机位 ,在例子中 42和47 相差位5小于 7 所以有可能在一个网段。 如果大于 7 则肯定 不在一个网域。
③ 如果小于 7 则可能在一个网域。
0-7
8-15
16-23
24-31
32-39
.
.
.
248-255
可以发现规律
主机位是0到7 是8个一循环
所以 在 小于等于7 的前提下 可以 用关键段的 ip/8 看他们的商是否相同 相同则在一个网域 反之不在一个网域。
例 42/8=5 47/8=5 求商即可 都是5 所以在一起 那 42和48 就不在一个网域。
这样可以用算术的方法来快速的判断。
转载于:https://blog.51cto.com/19941018/1917333
根据netmask快速判断是否在一个网域相关推荐
- Active Directory网域
Active Directory网域 3.1Windows网络的管理方式 3.1.1工作组模式 工作组由一组用网络连接在一起的计算机组成,他们将计算机内的资源共享给用户访问.工作组网络也被称为&quo ...
- CNNIC发布“网域”DNS系列产品了
9月20日,中国互联网络信息中心(CNNIC)在京发布"网域"DNS系列产品,首次在国内建立全方位.多层次的域名服务与安全防护产品体系,将极大提升我国域名体系的网络安全和应急处置能 ...
- 一道腾讯面试题:如何快速判断某 URL 是否在 20 亿的网址 URL 集合中?布隆过滤器...
何为布隆过滤器 还是以上面的例子为例: 判断逻辑: 多次哈希: Guava的BloomFilter 创建BloomFilter 最终还是调用: 使用: 算法特点 使用场景 假设遇到这样一个问题:一个网 ...
- 如何快速判断某 URL 是否在 20 亿的网址 URL 集合中?
假设遇到这样一个问题:一个网站有 20 亿 url 存在一个黑名单中,这个黑名单要怎么存?若此时随便输入一个 url,你如何快速判断该 url 是否在这个黑名单中?并且需在给定内存空间(比如:500M ...
- js快速判断IE浏览器(兼容IE10与IE11)
原文:js快速判断IE浏览器(兼容IE10与IE11) 在很多时候,我们一般采用navigator.userAgent和正则表达来判断IE浏览器版本,下面介绍用IE浏览器中不同特性来判断IE浏览器 1 ...
- 上海网域CEO肖确伟:IDC精细化运营探讨
本文讲的是上海网域CEO肖确伟:IDC精细化运营探讨,中国IDC评述网11月16日报道:2012年,IDC行业正面对着前所未有的危与机,这一点每个IDC行业人都感同身受. 近几年,随着IDC行业急速发 ...
- put url带参数_一道腾讯面试题:如何快速判断某 URL 是否在 20 亿的网址 URL 集合中?...
来源:http://rrd.me/ekN8q 何为布隆过滤器 还是以上面的例子为例: 判断逻辑: 多次哈希: Guava的BloomFilter 创建BloomFilter 最终还是调用: 使用: 算 ...
- scaner从外网到内网域渗透笔记
scaner 从外网到内网域渗透 1.环境配置 1.1靶场信息 用到的虚拟机共有三个 分别是 12server-db .12-dc .web1 12server-db.web1 这两个可以使用桥接或者 ...
- 从外网打点到渗透内网域控 NASA
文章目录 从外网打点到渗透内网域控 NASA 前言 任务说明 靶场拓扑 环境搭建 外网打点 端口扫描 使用 masscan 扫描全部端口 使用 nmap 扫描全部端口 目录扫描 后台测试 社工生成字典 ...
最新文章
- Linux入门时必学文件处理个命令
- 笔记-中项案例题-2017年下-变更管理和配置管理
- 计算机所有数据的表示方式都是用,计算机数据表示
- 【华为云技术分享】MongoDB经典故障系列五:sharding集群执行sh.stopBalancer()命令被卡住怎么办?
- 综合后端各种类型文件
- win10系统更新服务器太慢了,Win10易升更新系统很慢的解决方法
- 兴东机器人_福州市松下机器人维保中心
- mysql 存储微信表情
- 计算机护眼模式怎么设置的,教你如何开启电脑的护眼模式
- 解决网页上内容不能复制的几种方法
- note2便携式WLAN热点开启后没连接时自动关闭时长在哪设置
- 【精选】VI手册设计模板合集,附带源文件、预览图、精细分类
- excel中图片链接利用宏VB转换为图片展示
- 苹果手机的ipsec
- (转)常用的js代码
- 深入理解MATLAB中contour函数
- 一支口红用了5年_一支口红多久该扔掉?保质期过了还能用吗?
- (转)关于样本标准差(SD)与样本标准误差(SE)
- 无迹卡尔曼滤波算法(UKF)详细推倒及其仿真(matlab)
- 如何看待鸿蒙操作系统
热门文章
- activiti5第四弹----serviceTask中的java服务任务
- oracle中的Number的长度定义
- 解决echart中:Cannot read property ‘queryComponents‘ of undefined
- pyspark与jupyter集成
- java注解教程 pdf_Java注解详解
- android的图片缩放,Android图片缩放总结及比较
- 2021届安徽高考成绩查询,安徽2021年高考成绩什么时候公布
- 能干的产品经理比不上能说的产品经理
- wireshark网卡权限_设置网卡属性用wireshark抓VLAN包
- c语言汉字属于什么类型_空气悬浮风机在风机中属于什么类型?