根据IP地址和子网掩码求网络号、主机号

根据IP地址和子网掩码求网络号、主机号一、理论阐述目前,IP地址主要使用32位的二进制来表示,即IPv4地址。由于32位二进制不容易记忆和书写,故采用点分十进制形式来表示IP地址。IP地址由两部分组成{<网络号>,<主机号>},网络号表示计算机所在的网络,供路由器在进行路由选择时使用;主机号是计算机在该网络中的唯一标识。IP地址分为A、B、C、D、E五类,其中:A类IP地址第一个字节的范围是:1~126…

大家好,又见面了,我是你们的朋友全栈君。

一、理论阐述
目前,IP地址主要使用32位的二进制来表示,即IPv4地址。由于32位二进制不容易记忆和书写,故采用点分十进制形式来表示IP地址。IP地址由两部分组成{<网络号>,<主机号>},网络号表示计算机所在的网络,供路由器在进行路由选择时使用;主机号是计算机在该网络中的唯一标识。
IP地址分为A、B、C、D、E五类,其中:
A类IP地址第一个字节的范围是:1~126
B类IP地址第一个字节的范围是:128~191
C类IP地址第一个字节的范围是:192~223
D类IP地址第一个字节的范围是:224~239
E类IP地址第一个字节的范围是:240~255
子网掩码用来指明一个IP地址的网络位和主机位,它不能单独存在,必须结合IP地址一起使用。子网掩码也采用点分十进制来表示。
A类网络默认的子网掩码为:255.0.0.0
B类网络默认的子网掩码为:255.255.0.0
C类网络默认的子网掩码为:255.255.255.0
那么,在未进行子网划分的情况下,如何根据IP地址和子网掩码求出指定计算机的网络号和主机号呢?
求网络号:
(1)将点分十进制表示的IP地址、子网掩码分别转换为二进制表示;
(2)将以上得到的两个二进制做“与”(AND)运算,也可直接保留子网掩码中“1”所对应的IP地址的部分,主机位用“0”来填充;
(3)将第(2)步得到的运算结果转换为点分十进制表示,即可得到网络号。
求主机号:
(1)将点分十进制表示的IP地址、子网掩码分别转换为二进制表示;
(2)将上面得到的二进制表示的子网掩码取反,再与二进制表示的IP地址做“与”(AND)运算,也可直接保留子网掩码中“0”所对应的部分;
(3)将第(2)步得到的运算结果转换为点分十进制表示,即可得到主机号。
二、举例说明
已知:IP地址为192.168.0.143,子网掩码为255.255.255.0,求网络号、主机号。
解:
(1)将IP地址转换为对应的二进制:
11000000.10101000.00000000.10001111
(2)将子网掩码转换为对应的二进制:
11111111.11111111.11111111.00000000
(3)以上两结果进行“与”运算:
11000000.10101000.00000000.00000000
(4)将上述二进制结果转换为点分十进制表示,则网络号为:
192.168.0.0
(5)将子网掩码的二进制表示取反:
00000000.00000000.00000000.11111111
(6)将(1)和(5)的结果做“与”运算:
00000000.00000000.00000000.10001111
(7)将上述二进制结果转换为点分十进制表示,则主机号为143。

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

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

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


相关推荐

  • MATLAB插值函数interp1

    MATLAB插值函数interp1插值法    插值法又称“内插法”,是利用函数f(x)在某区间中已知的若干点的函数值,作出适当的特定函数,在区间的其他点上用这特定函数的值作为函数f(x)的近似值,这种方法称为插值法。如果这特定函数是多项式,就称它为插值多项式。线性插值法    线性插值法是指使用连接两个已知量的直线来确定在这两个已知量之间的一个未知量的值的方法。    

    2022年6月13日
    30
  • 发卡网源码附企业发卡网源码搭建安装教程[通俗易懂]

    发卡网源码附企业发卡网源码搭建安装教程[通俗易懂]  发卡网源码类似于线下无人售货机的内核,一套高效运行的企业发卡网源码可以为平台上的不同商户提供稳定的发卡服务,一方面顾客可以24小时无忧的选择自己所需的商品,另一方面为商家节省大量的营销成本。平台所需要的做的事情只是处理好客户的纠纷问题,从中赚取一定的管理服务费,可谓是一种三方共赢的商业模式。  发卡网源码:fakaysw.top    选择一套好的企业多商户发卡网源码有一些最基本的要素是考虑的,下面本文来一一分析:    1、源码是否有后门,很多朋友往往为了贪图便宜,找一些免费的或者便

    2022年7月14日
    23
  • freemaker判断空_python条件语句举例

    freemaker判断空_python条件语句举例if…else…&lt;#if condition&gt;  …&lt;#elseif condition2&gt;  …&lt;#elseif condition3&gt;  …&lt;#else&gt;  …&lt;/#if&gt;只有一个if的情况:&lt;#if x = 1&gt;  x is 1&lt;/#if&gt; 包含elseif的情况:

    2025年6月8日
    0
  • idea intellij 查看接口被哪些类实现「建议收藏」

    idea intellij 查看接口被哪些类实现「建议收藏」点击接口左侧的绿色圆点出现的列表就是该接口被实现的类

    2022年8月15日
    3
  • (二)缺陷报告「建议收藏」

    (二)缺陷报告「建议收藏」当测试人员发现一个缺陷,需要填写一份“缺陷报告”来记录这个缺陷,并通过这个缺陷报告告知开发人员所发生的问题–缺陷报告是测试人员和开发人员交流沟通的重要工具。案例1:张三在测试案例1-2-1程序时,发现除数为0时程序异常退出,向开发组提交一份缺陷报告。一、缺陷报告的组成:①缺陷编号(DefectID):提交缺陷的顺序②缺陷标题(summary):简明扼要的描述缺陷③缺陷…

    2022年9月17日
    0
  • spring aop实例讲解_java swing 教程

    spring aop实例讲解_java swing 教程1.SpringAOP是什么?AspectOrientedProgramming:面向切面编程什么时候会出现面向切面编程的需求?按照软件重构的思想,如果多个类中出现重复的代码,就应该考虑定义一个共同的抽象类,将这些共同的代码提取到抽象类中,比如Teacher,Student都有username,那么就可以把username及相关的get、set方法抽取到SysUser中,这种情况,我们称…

    2022年8月11日
    1

发表回复

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

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