子网掩码和ip地址的关系_ip地址和子网掩码求网络地址

子网掩码和ip地址的关系_ip地址和子网掩码求网络地址1、什么是ip地址在网络中,所有的设备都会被分配一个地址。这个地址就相当于某条路上的XX号XX房。其中【号】对应的号码是分配了整个子网的,而【房】对应的号码是分配给子网中的计算机的,这就是网络中的地

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1、什么是ip地址

       在网络中,所有的设备都会被分配一个地址。这个地址就相当于某条路上的XX号XX房。其中【号】对应的号码是分配了整个子网的,而【房】对应的号码是分配给子网中的计算机的,这就是网络中的地址。【号】对应的号码称为网络号,【房】对应的号码称为主机号,这个地址的整体称为IP地址。通过这个IP地址我们可以找到服务器的位置。

2、IP地址的格式

因为人类依赖十进制,所以这里的IP地址用十进制的方式表示

要让机器识别,还是得转为二进制

(十进制IP地址) 14.145.184.184

(二进制IP地址) 00001110 . 10010001 . 10111000 . 10111000

这种IP方式的表示方法,叫做IPV4,就是通过4*8=32位来表示每个IP地址

这样的话,一共有多少个IP地址呢?

最小地址 00000000 00000000 00000000 00000000 也就是 0.0.0.0

最大地址 11111111 11111111 11111111 11111111 也就是 255.255.255.255

IPV4的方式,最多可以表示 255 * 255 * 255 * 255 = 4228250625 个ip地址 = 40亿,目前已经用完了

3、私有IP

为了解决公网IP地址不足的情况,于是发明了私有IP (Private IP)

比如一个家庭(公司)有几台电脑,每台电脑都拥有 私有IP,它们之间组成一个局域网

这几个私有IP,可以通过某些技术(NAT),共同使用一个公有IP

也就是说,一个公有IP,可以分出很多个很多个私有IP,这样IPV4不足的问题就解决了

私有IP为了更好的管理,分为3种类型

CLASS A:10.0.0.0 ~ 10.255.255.255
CLASS B:172.16.0.0 ~ 172.31.255.255
CLASS C:192.168.0.0 ~ 192.168.255.255

4、IP地址是怎么构成的

寻找IP地址,可以用快递寻找门牌号码类比

每栋楼有楼号,比如4号楼,5号楼等
每栋楼有门牌号,比如101号房,102号房等

IP地址同样有两部分地址组成,分别是”网络地址(网络号)”和“主机地址(主机号)”

不同的分类(A,B,C)划分的”网络号”和“主机号”是不同的,这里有个表


子网掩码和ip地址的关系_ip地址和子网掩码求网络地址

 

只要IP地址的”网络号net_id(紫色)”相同,我们就把这几个IP地址称之为在同一个网段

彼此可以相互访问,比如联机打游戏

当主机号全为0的时候,代表着整栋楼第一个房子,又叫做网络地址 network ip

当主机号全为1的时候,代表着整栋楼最后一个房子,又叫做广播地址broadcast ip

5、子网掩码是啥?有什么作用?

还是用楼房号来打比方好了

在现实中,我们可以这样表示,1号楼201房间
IP地址中,数字都是连在一起的,10101010.10101010.10101010.00000001
我们怎么知道哪部分是楼号?哪部分是房间号呢?怎样划分呢?

答案是通过——Netmask 子网掩码

掩码的意思,就是把一部分的代码掩盖住,同时露出另一部分代码

子网掩码,是为了掩盖住“网络号net_id”,暴露出“主机号host_id”

用1表示掩盖
用0表示暴露

以这个为例,IP地址写法:10.10.10.1/24 10.10.10.1/25

24说明了子网掩码遮住了24位,也说明了这个IP的“网络号net_id”是24位,网段占了24位

25说明了子网掩码遮住了25位,也说明了这个IP的“网络号net_id”是25位,网段占了25位

因为10.10.10.1/24 和 10.10.10.1/25的“网络号”不同,网段不同

而网络地址(第一个IP地址),通过IP地址(二进制)和子网掩码(二进制)进行与操作得出

10.10.10.1/24中的10.10.10.1二进制为10101010.10101010.10101010.00000001
10.10.10.1/24中的子网掩码为11111111 11111111 11111111 00000000
所以10.10.10.1/24中的网络地址为 10101010.10101010.10101010.00000000,即10.10.10.0
10.10.10.1/24中的广播地址为 10101010.10101010.10101010.11111111,即10.10.10.255
所以这个网段里,能分配给主机使用的一共有254个IP地址,从10.10.10.1~10.10.10.254

10.10.10.1/25中的10.10.10.1二进制为10101010.10101010.10101010.00000001
10.10.10.1/25中的子网掩码为11111111 11111111 11111111 10000000
所以10.10.10.1/25中的网络地址为 10101010.10101010.10101010.00000000,即10.10.10.0
10.10.10.1/25中的广播地址为10101010.10101010.10101010.01111111,即10.10.10.127
(在网络地址变广播地址的时候,因为子网掩码掩盖了25位,所以只能最后27位变成1)
所以在这个网段能,能分配给主机使用的一共有126个地址,从10.10.10.1~10.10.10.126

10.10.10.1/24 和 10.10.10.1/25

一个是子网掩码为24的10.10.10.1的IP地址

一个是子网掩码为25的10.10.10.1的IP地址

表面上两个IP地址是一样的,但因为子网掩码的不同,导致网段的不同

好比一号楼有201号房间,二号楼也有201房间,但这两个房间,不是同一个房间

10.10.10.1/24 和 10.10.10.1/25也是两个IP地址

 
以上内容摘自知乎
作者:知乎用户

链接:https://www.zhihu.com/question/29723388/answer/66737890

来源:知乎

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166912.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 小米9刷面具和模块[通俗易懂]

    小米9刷面具和模块[通俗易懂]准备工作:没解BL锁的需要先解锁1.按住音量键下和关机键进入Fastboot模式连接电脑2.这里使用奇兔刷机连接手机,中途会自动安装驱动,若安装驱动失败可使用驱动精灵或驱动人生手动安装驱动.安装完驱动后奇兔刷机会显示已经连接到手机开启root:1.下载twrphttps://twrp.me/xiaomi/xiaomimi9.html2.1.把Magisk-v20.4.zip和magisk-taichi

    2022年6月4日
    114
  • 启动docker镜像命令_什么是docker镜像

    启动docker镜像命令_什么是docker镜像docker启动//加载镜像文件dockerload-imec2.tar//查看是否有mec:v2镜像dockerimagels//rundockerrun-itdmec:v2//查看容器iddockerps//执行dockerexec-it镜像idbash将文件从宿主机拷贝到docker里在宿主机里面执:dockercp宿主机中要拷贝的文件名及其路径容器名:要拷贝到容器里面对应的路径从docker里面拷文件到宿主机在宿主机

    2022年9月22日
    6
  • linux下nginx启动_centos7添加静态路由

    linux下nginx启动_centos7添加静态路由啥?都2020年了,在Linux中还不会安装部署nginx啊。花5分钟赶紧来看看吧。步骤超详细,学不会你来揍我。

    2022年10月5日
    4
  • Python:利用python代码编程实现将视频的avi格式转换为MP4格式

    Python:利用python代码编程实现将视频的avi格式转换为MP4格式​Python:利用python代码编程实现将视频的avi格式转换为MP4格式目录利用python代码编程实现将视频的avi格式转换为MP4格式T1、ffmpeg命令在dos内实现T2、python代码编程实现利用python代码编程实现将视频的avi格式转换为MP4格式T1、ffmpeg命令在dos内实现ffmpeg-y-iF:\File_Anaconda\project_py37\RealTimeImageAnimation\output\FamilyBa_HuGe.a

    2022年10月17日
    3
  • AutoEventWireup解释

    AutoEventWireup解释这一事件聚合了当前页是否自动关联某些特殊事件。首先,从浏览器页面出发的事件不能立刻在本地得到处理,而是POST至服务器上,因此,asp.net建立了委托(代理)机制。在建立一个事件的同事,建立相应的委托。privatevoidInitializeComponent(){<spanstyle=”white-space:pre”> </span>t…

    2022年5月8日
    38
  • Animator_制作动画的软件

    Animator_制作动画的软件1、ApplyRootMotionAnimatorMoveScript.cs:voidOnAnimatorMove(){//在脚本中使用此函数,并把它添加到相应对象上//这个方法就会覆盖Ap

    2022年8月2日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号