IP地址优选网写过很多相关文章介绍,一些朋友还是对子网掩码、ip地址的网段等不太了解,我们下面一起来看看网友常常问到的一些相关问题。子网掩码转换32位整数

一、什么是子网掩码?

在了解ip地址的网段之前,我们先来了解子网掩码,很多对网络了解不深的朋友都对子网掩码有些迷惑, 不了解它是用来干什么的?

子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。

说的通俗的话,就是用来分割子网和区分那些ip是同一个网段的,那些不是同一网段的。【路由器产品大全】

例如,两个人都叫张三,但一个张三是张家村的,另一个张三是张村的,那么如何区分这两个张三分别是属于那个村的呢?得让村长来区分,就可以准确的把各自的张三领回村,那么子网掩码就相当于村长,它就是用来区分ip该ip地址是属于那个网段的。

在实际项目中,我们通常会遇到这样的ip地址。

ip地址:192.168.1.1 子网掩码:255.255.255.0

ip地址:192.168.1.2 子网掩码:255.255.255.0

我们可以直接的判断,他们是同属于一个网段的ip地址。

那么对于下面这样的呢?

ip地址:192.168.1.1 子网掩码:255.255.255.0

ip地址:192.168.1.2 子网掩码:255.255.0.0

这两个ip地址虽然在不看掩码的情况下,比较像,但他们并不是同一个网段内的。

这个可以从子网掩码来判断,

192.168.1.1 255.255.255.0是属于192.168.1.0网段的。

而192.168.1.2 255.255.0.0是属于192.168.0.0网段。

二、如何根据掩码来确定ip地址网段

上面我们已经举例了解了子网掩码的作用,接下来我们再来了解如何确定子网掩码和判断ip地址的网段。

通常我们在划分vlan的时候会使用以下例子:

例1:

创建vlan1:ip地址:192.168.1.1 子网掩码:255.255.255.0

创建vlan2: ip地址:192.168.2.1 子网掩码:255.255.255.0

那么他们是不是在同一个网段呢?平时配置ip地址较多的朋友,可以直观的判断,他们并不是属于同一个网段,那么如何计算呢?要想判断两个ip地址是不是在同一个网段,只需将ip地址与子网掩码做与运算,如果得出的结果一样,则这两个ip地址是同一个子网当中。

详细计算

将ip地址192.168.1.1转换为二进制

11000000 10101000 00000001 00000001

将子网掩码255.255.255.0转换成二进制

11111111.11111111.11111111.00000000

然后将两者相“与(and)"运算:

11000000 10101000 00000001 00000001

11111111.11111111.11111111.00000000

然后得到:

11000000 10101000 00000001 00000000

转换成网络号就是:192.168.1.0

将ip地址192.168.2.1转换为二进制

11000000 10101000 00000010 00000001

将子网掩码255.255.255.0转换成二进制

11111111.11111111.11111111.00000000

然后将两者相“与(and)"运算:

11000000 10101000 00000010 00000001

11111111.11111111.11111111.00000000

然后得到:

11000000 10101000 00000010 00000000

转换成网络号就是:192.168.2.0

很明显,二者的结果是不一样的,一个是网段192.168.1.0,一个是网段192.168.2.0,所以不是一个网段。

例2

ip地址1:192.168.1.1 子网掩码:255.255.252.0

ip地址2:192.168.2.1 子网掩码:255.255.252.0

很明显,我们这个和上面例1的ip地址是一样的,只是子网掩码不一样,如果不看子网掩码,首先可能就判断他们不是同一个网段。

这里面和上面例1中唯一变化就是子网掩码从255.255.255.0换成了255.255.252.0了,那我们来看下,他们是否属于同一个网段。

详细计算

将ip地址192.168.1.1转换为二进制

11000000 10101000 00000001 00000001

将子网掩码255.255.252.0转换成二进制

11111111.11111111.11111100.00000000

然后将两者相“与(and)"运算:

11000000 10101000 00000001 00000001

11111111.11111111.11111100.00000000

然后得到:

11000000 10101000 00000000 00000000

转换成网络号就是:192.168.0.0

将ip地址192.168.2.1转换为二进制

11000000 10101000 00000010 00000001

将子网掩码255.255.252.0转换成二进制

11111111.11111111.11111100.00000000

然后将两者相“与(and)"运算:

11000000 10101000 00000010 00000001

11111111.11111111.11111100.00000000

然后得到:

11000000 10101000 00000000 00000000

转换成网络号就是:192.168.0.0

很明显,二者的结果是一样的,都是属于192.168.0.0网段,所以他们是同属于一个网段。

当然,如果对子网较熟了就不需要经过这些运算了,大部分的网段可以通过分析子网掩码与ip地址就可以判断出来是否属于网一网段,但前提是你需要熟悉网段的原理与运算的方法。

三、如何根据ip地址推算子网掩码

确定ip地址子网掩码

大部分的情况下,我们网络中只要不超过254台主机的的话,子网掩码都可以设置成255.255.255.0。那么超过了254台主机的话怎么办呢?

可以划分vlan,也可以设置成一个大网段,划分vlan我们就不说了,上面有例子,设置成一个大网段就有一个难点,如何确定这个大网段里面的子网掩码呢?

例如

假设监控网络中有600个点位,我们现在也不想把它划分vlan(实际项目中大部分是会划分vlan的),假设只想用一个大网段把这600个点位分配ip地址,如何设置ip地址,如何确实子网掩码?

分析:首先我们知道600个点位,可以使用3个254个ip地址段来分配。

可以使用

ip段一:192.168.0.1——192.168.0.254

ip段二:192.168.1.1——192.168.1.254

ip段三:192.168.2.1——192.168.2.254

每个网段有254个ip地址,完全够600个点位用的。

那么问题来了,如果要使这三个ip段在同一个网段内,那么这个大网段共同的子网掩码是多少呢?

我们来分析下:

将ip地址192.168.0.1转换为二进制

11000000 10101000 00000000 00000001

将ip地址192.168.1.1转换为二进制

11000000 10101000 00000001 00000001

将ip地址192.168.2.1转换为二进制

11000000 10101000 00000010 00000001

转换成了二进制,可以看得出,三个ip段的二进制前面22位的是不变的,那么可以将他们表示成:

ip段一:192.168.0.1/22

ip段二:192.168.1.1/22

ip段三:192.168.2.1/22

这种192.168.2.x/22形式的ip地址相信大家平时都见过,就是已经告诉了子网掩码了。

也就是说他们共同的子网掩码二进制前面22个都是1。

11111111 11111111 11111100 00000000

转换成十进制,那就是255.255.252.0,所以他们共同的子网掩码就是255.255.252.0。

当然在实际项目中,与网络接触较多的人不需要通过一系列的换算,直接可以通过简单的判断估算出来这个大网段的子网掩码,因此,今天是讲原理,方便大家理解,所以所有的换算都是通过运算出来的。

三位整数两位小数掩码_子网掩码转换32位整数相关推荐

  1. 64位处理器_电脑系统32位好还是64位好 哪个快?

    1.运算速度不同.电脑CPU运算使用的是二进位制,O和1,一个O或一个1叫一位,8个位组成一个字节,2个字节组成一个标准汉字,处理的位数越高,表明其运算速度越快.通常我们说的64位32位是指的处理器( ...

  2. php 不是有效的win32,%1不是有效的 win32应用程序(64位转换32位)

    在windows 2003 64位系统上安装完iis后,运行php文件提示%1不是有效的 win32应用程序,百度一下,终于找出问题,原来是windows2003 64位的操作系统和32位IIS的问题 ...

  3. 64位linux,sizeof(int),C中sizeof()的用法——32位和64位下的sizeof()

    机器平台:X86_64 处理器 操作系统:Red Hat 4.1.2-14 编译器: gcc version 4.1.2 20070626 Size of char is:               ...

  4. 判断oracle客户端是32还是64,64位-如何知道已安装的Oracle Client是32位还是64位?

    64位-如何知道已安装的Oracle Client是32位还是64位? 操作系统:Windows 2008 Server R2 Oracle客户端:11.2 非常感谢 8个解决方案 73 votes ...

  5. 技巧——1.解决“不能安装 64 位版本的 Office 2010,因为已安装 32 位 Office 产品”问题。2.WIN7 安装office2010错误1920

    一.解决"不能安装 64 位版本的 Office 2010,因为已安装 32 位 Office 产品"问题 解决方法: 1.删除该目录下的office文件夹.C:\Users\Ad ...

  6. 三位整数两位小数掩码_小数点造句_造句大全

    小数点造句: 1.怪圈中心近处的那个小圆圈,就是小数点. 2.这个参数可与一个数字联合使用,以告知格式化程序有多少个小数点要使用. 3.由于我预想到此商家会遗漏金额的小数点和方法,因此脚本在需要的时候 ...

  7. sql 计算两个小数乘积_数学篇|学会这些数学计算技巧,想不满分都难!

    计算是小学数学的基础,四则运算和混合运算是计算要考察的重点.在这里我们总结了小学用到的所有计算定律和简便方法,包括运算定律.运算法则.运算顺序和速算技巧四大部分,帮助小学生牢固掌握数学知识点.先赞后看 ...

  8. 一位原码的乘法规则_原码一位乘法与补码一位乘法

    原码1位乘法 在定点计算机中,两个原码表示的数相乘的运算规则是:乘积的符号位由两数的符号按异或运算得到.而乘积的数值部分则是两个正数相乘之积.设n位被乘数和乘数用定点小数表示(定点整数也相同适用) 被 ...

  9. 64 大小_电脑系统32位和64位有什么区别

    众所周知,windows系统有32位和64位,但这两者有什么不同呢?什么样的电脑装什么版本的呢?笔者就简单的来讲一下两者的区别. 一.支持的内存不同 32位的操作系统,最多支持4G的内存,实际内存为3 ...

最新文章

  1. 2021年云安全威胁预测,懂网络安全的无需恐慌
  2. 一个可以在github上搜代码段的网站
  3. 用Springboot实现文件下载功能
  4. 海思芯片硬件java加速_海思Hi3719C V100芯片简介
  5. CF755G-PolandBall and Many Other Balls【倍增FFT】
  6. 前端学习(705):do-while
  7. 作者:詹晓娟(1978-),女,黑龙江工程学院讲师。
  8. Qt文档阅读笔记-QCompleter官方解析及实例
  9. 吴恩达深度学习之二《改善深层神经网络:超参数调试、正则化以及优化》学习笔记
  10. 依靠信用卡周转生活的人多吗?
  11. Angular 2 之七 依赖注入
  12. iOS最新验证电话号码与手机号码的正则方法
  13. 常用响应式web UI框架搜集整理
  14. Undo log日志详解
  15. 详解Dual Thrust量化策略及其发明者Michael Chalek的前世今生
  16. 2017计算机知识竞赛题,2017年《西游记》知识竞赛试题100题附答案.doc
  17. 解读txt文件中的乱码
  18. Spring Boot - Thymeleaf模板简介以及集成
  19. ssm电子书店管理系统的设计与实现毕业设计源码080050
  20. [HTML]HTML学习笔记

热门文章

  1. Axis1.4 远程命令执行(CVE-2019-0227)复现
  2. vue 中deep使用
  3. 分享 | 研发效能提升——敏捷需求篇
  4. sau交流学习社区第三方登陆github--oauth来实现用户登录
  5. linux字符串排序文件,Linux awk+uniq+sort 统计文件中某字符串出现次数并排序
  6. tp5与tp6的区别是啥呀?
  7. 临沧黄衣阿佤-中国佤民族中一支穿黄色衣服的佤族群体
  8. 系统运维-20-2-openssh和openssl
  9. developerWorks 中国Java technology文档库Spring 系列
  10. 借助Docker hub自己手动制作镜像(以Nginx镜像为例)