IP、子网掩码、网络号和主机号的关系

2023-05-16

 IPV4的IP地址格式通常表示为xxx.xxx.xxx.xxx,其中xxx为十进制数,取值范围是[0,255],若用16进制表示则为xx.xx.xx.xx,其中xx的取值范围是[0,FF]。IP地址使用二进制位表示时,它共占4x8=32个二进制位,前n个二进制为表示网络ID,即网络号,后32-n个二进制位表示每个子网段的主机IP地址,其中n是根据各个子网内主机的数量的最大值来决定,即2^(32-n)>=max(各子网内主机数num)。

比如在建设实验室时,想让每个机房的主机分别在各自的子网内,每个机房内最多配置200台电脑,那么通过2^(32-n)>=200(各子网内主机num)可以计算出n=24,即IP地址的前24位作为每个子网的网络号,后8位作为子网内的主机号。注意这256个IP地址的主机号中([000000000-11111111]即[0-255]),其中主机号全0即表示当前的子网的网络号,全1的通常是广播地址,这两个都不能用作实际机器的IP地址。

路由器在确认IP是否属于本子网时是通过子网掩码来区分。网络号所占的位全1,其余为全0即是子网掩码,如上面8位主机号,其子网掩码为(255.255.255.0),子网掩码与IP地址按位与,其结果中,主机号全为0,剩余高位即为此IP的子网号/网络号。

IP地址:192.168.1.1,子网掩码:255.255.255.0。

11000000.10110000.00000001.00000001

11111111.11111111.11111111.00000000

按位相与得:

11000000.10110000.00000001.00000000

即网络号为192.168.1.0


如何将一个网络分为两个子网?

 

如将网络40.15.0.0分为两个子网,第一个子网是40.15.0.0/17,那么第二个子网将会是()。

解:

子网划分是通过借用IP地址的若干位主机位来充当子网地址从而将原网络划分为若干子网而实现的。划分子网时,随着子网地址借用主机位数的增多,子网的数目随之增加,而每个子网中的可用主机数逐渐减少。以C类网络为例,原有8位主机位,2的8次方即256个主机地址,默认子网掩码255.255.255.0。借用1位主机位,产生2个子网,每个子网有126个主机地址;借用2位主机位,产生4个子网,每个子网有62个主机地址……每个网中,第一个IP地址(即主机部分全部为0的IP)和最后一个IP(即主机部分全部为1的IP)不能分配给主机使用,所以每个子网的可用IP地址数为总IP地址数量减2;根据子网ID借用的主机位数,我们可以计算出划分的子网数、掩码、每个子网主机数,列表如下:

  ① 划分子网数 ② 子网位数 ③ 子网掩码(二进制) ④ 子网掩码(十进制) ⑤ 每个子网主机数

  ① 1~2 ② 1 ③ 11111111.11111111.11111111.10000000 ④ 255.255.255.128 ⑤ 126

  ① 3~4 ② 2 ③ 11111111.11111111.11111111.11000000 ④ 255.255.255.192 ⑤ 62

  ① 5~8 ② 3 ③ 11111111.11111111.11111111.11100000 ④ 255.255.255.224 ⑤ 30

    ① 9~16 ② 4 ③ 11111111.11111111.11111111.11110000 ④ 255.255.255.240 ⑤ 14

  ① 17~32 ② 5 ③ 11111111.11111111.11111111.11111000 ④ 255.255.255.248 ⑤ 6

     ① 33~64 ② 6 ③ 11111111.11111111.11111111.11111100 ④ 255.255.255.252 ⑤ 2

第一个子网是40.15.0.0/17,即表示网络号占前17位,后15位表示主机号。第一个子网二进制可表示为(40.15.00000000.00000000),其中40.15占前16位,网络号占17位,分为两个子网,必定是第17位不同,第一个子网的第17位为0,那么第二个子网的第17位则为1,即(40.15.10000000.00000000),即40.15.128.0/17,这两个子网的子网掩码分别是(255.255.0.0和255.255.128.0)。

如何通过已知IP和子网掩码,判断IP属于同一网段?

 

已知IP:10.110.12.29,Mask:255.255.255.224,判断与已知IP属于同一网段的是哪个()。

A.10.110.12.0

B.10.110.12.30

C.10.110.12.31

D.10.110.12.32

子网掩码转换为二进制表示(11111111.11111111.11111111.11100000),可知后5位是主机号。

用已知IP与Mask按位相与可得子网络号为10.110.12.0。

又因本网段内主机号为5位,则本网段内IP地址可选范围是[10.110.12.0,10.110.12.31],又因主机号位全0表示子网络号,全1用于广播地址,则IP地址范围是[10.110.12.1,10.110.12.30],可知B符合。
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IP、子网掩码、网络号和主机号的关系 的相关文章

随机推荐

  • js删除键值对的方法

    1 对于Map 增set k v 删delete k 查 get k 改set 43 get span class token keyword const span graph span class token operator 61 sp
  • java一路走来

    记得第一次学编程 xff0c 那都是高二时 xff0c 那时因为电脑很狂热 xff0c 刚好有一个哥就给我介绍了编程 xff0c 并给我演示了下vb语言 xff0c 用vb做了个计算器 xff0c 当时我惊呆了 xff0c 才知道编程有多神
  • Python基础教程之列表

    八仙过海是一个中国民间故事 xff0c 讲了汉钟离 张果老 韩湘子 铁拐李 吕洞宾 何仙姑 蓝采和和曹国舅八位神仙各显神通渡海的故事 我们都知道变量只能被赋值为一个值 xff0c 现在我们想把八位神仙的名字同时赋值 xff0c 该如何实现呢
  • move_base参数配置

    现在我们已经可以构建当前环境地图 xff0c 可以实现机器人在当前地图中的定位 那接下来就可以在地图上给定目标点 xff0c 开始规划路径控制机器人移动过去 xff0c 这样就可以完成在已知地图中进行自动导航的任务了 在已知地图中进行路径规
  • 计算节点nova服务启动失败

    在计算节点启动openstack nova compute服务的时候 xff0c 服务无法正常启动 xff0c 查看nova的日志发现如下报错 xff1a 2019 04 25 00 02 26 481 24682 ERROR nova T
  • openstack通过dashboard页面创建实例,实现实例与外部通信

    配置完所有节点 xff0c 通过dashboard页面来进行下一步的配置 首先通过admin用户登录页面 在管理员下 xff0c 创建一个外部网络 注意供应商类型为flat xff0c 之前修改配置文件时有提到过 etc neutron p
  • 防火墙经过地址转换抓包详解

    R表示收到 xff0c X表示发出 xff0c R 64 eth1是从eth1口收到数据包 X 64 eth2是从2口发出数据包 16 1 1 1 gt 18 1 1 2 表示IP 16 1 1 1发给IP 18 1 1 2 Seq后面的数
  • PyTorch复现SRGAN算法核心代码(带注释)

    train py import argparse import os from math import log10 import pandas as pd import torch optim as optim import torch u
  • saltstack部署OpenStack rocky版

    通过saltstack工具 xff0c 来自动部署OpenStack 基本的yaml 源码放在github上了 有兴趣可以查看 自行测试三台虚拟机安装没有问题 需要注意的是安装cinder slave xff08 从节点 xff09 的时候
  • openstack登录dashboard无法获取实例,无法获取镜像

    在部署配置完openstack基础服务以及dashboard后 登录页面发现很多功能都不正常 xff0c 无法获取实例 xff0c 也无法获取镜像 查看日志 xff1a grep ERROR var log nova var log nov
  • 实例 "test-1" 执行所请求操作失败,实例处于错误状态。: 请稍后再试

    openstack创建实例的时候出现报错 xff1a 实例 test 1 执行所请求操作失败 xff0c 实例处于错误状态 请稍后再试 错误 Build of instance 6ec6e8b1 9300 4be4 95fe 20434ea
  • Pycharm报错:Process finished with exit code -1066598274 (0xC06D007E)

    问题描述 pycharm运行到np linalg slogdet 时报错Process finished with exit code 1066598274 0xC06D007E xff0c 检查发现该函数输入shape超过 xff08 3
  • 你能区分数字化与信息化吗?

    近几年 xff0c 数字化 悄然无息地取代了 信息化 xff0c 从各种定义中 xff0c 我们可以知道数字化是指将任何连续变化的输入如图画的线条或声音信号转化为一串分离的单元 xff0c 在计算机中用0和1表示 xff0c 通常用模数转换
  • k8s高可用集群 kube-flannel报错,从running-error-CrashLoopBackOff。node“k8s-master-1“podcidr not assigned

    flannel 报错 xff0c 朋友别着急 xff0c 慢慢来 xff0c 看看能不能帮到你 报错信息 xff1a Error registering network failed to acquire lease node k8s ma
  • 查找文献的常用方法

    查找文献的常用方法 一 直接进行论文关键字搜索 直接搜索某个专题的论文 xff0c 关键词 和 摘要 是论文的特征词汇 如 xff1a Google学术搜索 xff1a http scholar google com 百度国学搜索 xff1
  • 【框架解析】Hadoop系统分析(九)--Http服务

    hadoop内嵌了jetty的服务 xff0c 提供了一系列的servlet供外界或是内部节点之间使用http访问 HttpServer 封装了jetty的Server xff0c 提供http服务 默认会提供三个context logs
  • 算法学习

    我们用的教材是电子工业出的 计算机算法设计与分析 xff08 王晓东 xff09 xff0c 这本书还行吧 xff0c 其实国内的任何一本算法书都 还不错 xff0c 因为他们无非都参考了算法导论或计算机程序设计艺术等这些国外的经典算法图书
  • Android Studio添加多国语言

    问题 如何在AS上添加多国语言string xml 初学者如我 xff0c 估计也摸不到地方 bing下网络居然没有找到这个问题的解答 xff0c 有的是直接在Res下添加语言文件夹即可 这个也是一个方法 xff0c 但是 xff0c 我想
  • Hiding Images in Plain Sight: Deep Steganography 于众目睽睽之下隐藏图像:深度隐写术

    Hiding Images in Plain Sight Deep Steganography 于众目睽睽之下隐藏图像 xff1a 深度隐写术 1 摘要 隐写术是将秘密信息隐藏在另一条普通信息中的一种实践 通常 xff0c 隐写术用于在较大
  • IP、子网掩码、网络号和主机号的关系

    IPV4的IP地址格式通常表示为xxx xxx xxx xxx xff0c 其中xxx为十进制数 xff0c 取值范围是 0 xff0c 255 xff0c 若用16进制表示则为xx xx xx xx xff0c 其中xx的取值范围是 0