2-ip地址分类「建议收藏」

2-ip地址分类「建议收藏」1.ip地址的种类  我们在学习计算机网络时知道,计算机网络一般根据网络大小分对网络进行分门别类:一般有局域网,广域网,城域网,互联网等。对于拥有大量结点的少部分网络,他们创建了A类网络这个等级。另一个极端情况是C类网络,它包括只拥有较少结点的众多网络。那么介于在A类和C类之间的网络就是B类网络了。2.ip地址分类  在早期为了适应大型,中型,小型等不同的网络,ip地址在设计出…

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

1. ip地址的种类

  我们在学习计算机网络时知道,计算机网络一般根据网络大小分对网络进行分门别类:一般有局域网,广域网,城域网,互联网等。对于拥有大量结点的少部分网络,他们创建了A类网络这个等级。另一个极端情况是C类网络,它包括只拥有较少结点的众多网络。那么介于在A类和C类之间的网络就是B类网络了。

2. ip地址分类

  在早期为了适应大型,中型,小型等不同的网络,ip地址在设计出来时被分成几类,分类地址的不同之处在于表示网络的位数和主机的位数。所有的ip地址被分成A,B,C,D,E这五大类,其中A,B,C类地址经常使用,而D和E类是特殊地址,不经常使用。

这里写图片描述

  上图中net-id部分表示网络号字段,host-id部分表示主机号字段。网络号和主机号加起来是32位(即4字节),正好表示一个ip地址,我们可以根据net-id来判断ip地址是属于哪一类。你可以认为网络号表示主机当前处于哪一个网段,而主机号则表示这个网段下具体的某一台主机。也就是说,通过ip地址的网络号和主机号可以找到某一个网段下的具体的某一台主机,我们来看图2感受下。

3. ip地址分类

这里写图片描述
  在图2中,同一网段的计算机网络部分相同,路由器连接10,11,12不同的网段(路由器的接口连接的都是不同网段),负责不同网段之间的数据转发,交换机连接的则是同一网段的计算机,交换机SW1连接着10网段中的计算机,交换机SW2连接着11网段中的计算机,交换机SW3连接着12网段中的计算机(注:实际上一个A类地址的网段下的主机远不止这么多,这里只是用A类地址来举例说明一下,只要大家理解这张图表达的意思就行了)。

4. 地址空间

  IPv4这种协议都定义了一个地址空间,地址空间就是协议所使用的ip地址总数。如果一个协议使用b位来定义地址,那么该协议的地址空间就是2的b次方,比如:IPv4使用32位来定义地址,每一位都可以取不同的值(0和1),那么IPv4的地址空间就是2的32次方,也就是4294967296个ip地址。

A类地址:
  32个二进制地址中,第一位的二进制位必须是0,那么地址空间就是2的31次方或者2147483648,A类的地址空间占用比例为:50% 。

B类地址:
  32个二进制地址中,第一位和第二位的二进制位必须是10,那么地址空间就是2的30次方或者1073741824,B类的地址空间占用比例为:25% 。

C类地址:
  32个二进制地址中,第一位,第二位,第三位的二进制位必须是110,那么地址空间就是2的29次方或者536870912,C类的地址空间占用比例为:12.5% 。

D类地址:
  32个二进制地址中,第一位,第二位,第三位,第四位的二进制位必须是1110,那么地址空间就是2的28次方或者268435456,D类的地址空间占用比例为:6.25% 。

E类地址:
  32个二进制地址中,第一位,第二位,第三位,第四位的二进制位必须是1111,那么地址空间就是2的28次方或者268435456,E类的地址空间占用比例为:6.25% 。

简单来说,地址空间是分类地址中所占用的ip地址总数,而这种总数是无法当做ip地址来进行分配的。

5. 判断ip地址分类方法

  前面说过,net-id用于标识网段号,host-id用于标识主机号。那我们应该怎么快速判断一个ip地址属于哪一类地址呢?

  对于A类地址来说,net-id部分占8位,host-id部分占24位。由于net-id最高位始终为0,那么net-id范围是00000000到01111111之间,如果用十进制表示的话则为0 – 127,由此我们可以根据ip地址的第一个字节的值(0 - 127)就可以判断ip地址是属于哪一类。

  同理,对于B类地址来说,net-id占用16位,host-id占用16位,由于net-id前2位为10,那么net-id的第一个字节范围是10000000到10111111之间,十进制表示为128 到191,那么ip地址的第一个字节的值为128 – 191的话,那么就是B类地址。

  C类地址的net-id占用24位,前3位为110,那么net-id的第一个字节范围是11000000到11011111之间,十进制表示为192 到 223,那么ip地址的第一个字节的值192 – 223的话,就是C类地址了。

  D类,E类地址由于没有划分net-id和host-id,但是D类地址的前4位是1110,那么D类地址的第一个字节取值范围就是11100000到11101111,十进制下表示为224到239。E类地址的前4位是1111,那么E类地址的第一个字节取值范围就是11110000到11111111,十进制下表示为240到255。

  记住分类地址的小技巧:每个IP地址占用4字节,即32位,我们只需用十进制判断IP地址的第一个字节,因此,只需记住第一个字节。

A类地址的第一个字节最高位是0
B类地址的第一个字节前2位是10
C类地址的第一个字节前3位是110
D类地址的第一个字节前4位是1110

  比如:对于192.168.4.23这个ip地址来说,我们只需关注第一个字节的值(192)属于哪一类地址的范围内,就可以知道第一个字节为192的ip地址是属于C类地址。

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/136583.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 从零和使用mxnet实现线性回归

    1.线性回归从零实现(1000,)epoch:1,loss:5.7996epoch:2,loss:2.1903epoch:3,loss:0.9078epoch:4,loss:0.3178e

    2021年12月30日
  • PHP 二维数组根据某个字段排序

    PHP 二维数组根据某个字段排序PHP 二维数组根据某个字段排序

  • 关于HashMap扩容机制

    关于HashMap扩容机制HashMap的底层有数组+链表(红黑树)组成,数组的大小可以在构造方法时设置,默认大小为16,数组中每一个元素就是一个链表,jdk7之前链表中的元素采用头插法插入元素,jdk8之后采用尾插法插入元素,由于插入的元素越来越多,查找效率就变低了,所以满足某种条件时,链表会转换成红黑树。随着元素的增加,HashMap的数组会频繁扩容,如果构造时不赋予加载因子默认值,那么负载因子默认值为0.75,数组扩容的情况如下:1:当添加某个元素后,数组的总的添加元素数大于了数组长度*0.75(默认,也可自己设

  • tcpip3次握手的通信过程是_tcp协议为什么要三次握手

    tcpip3次握手的通信过程是_tcp协议为什么要三次握手关于tcp通信过程中的三次握手、四次挥手的过程三次握手:此过程中:第一次握手,客户端先发一个SYN请求并附带一个J的值给服务端第二次握手,服务端收到请求后解堵塞,发送一个SYN请求并附带一个K值,还发送了第一次握手后对客户端的响应包并附带在之前接收到的J值的基础上加上1,即J+1第三次握手,客户端收到服务端发来的SYN请求和K值后,再发送一个K+1的响应包给服务端至此,三次握手成功…

  • plot画分段函数_Matlab分段函数图像画法的几点注记「建议收藏」

    plot画分段函数_Matlab分段函数图像画法的几点注记「建议收藏」摘要:本文指出《Matlab教程及实训》中关于分段函数画法的不妥,给出Matlab分段函数的最常用的几种画法。关键词:Matlab分段函数Matalb是三大数学软件之一,有强大的计算功能,图形处理功能,仿真功能,因此学好Matlab可以使我们事半功倍。我们在处理实际问题中经常遇到需要画函数图像,尤其分段函数,有时候会感到茫然,如何利用Matlab画分段函数的图像?我们都知道,画图也就是描点…

  • C++/C与Java的区别

    C++/C与Java的区别Java是由C++发展而来的,保留了C++的大部分内容,其编程方式类似于C++。但Java的句法更清晰、规模更小、更易学。Sun公司曾对多种程序设计语言进行分析研究,取其精华去其糟粕,最终推出了Java。Java从根本上解决了C++的固有缺陷,形成了新一代面向对象的程序设计语言(当然了解决问题也是需要代价的)。一、跨平台(C\C++和Java)Java是基于JVM虚拟机的跨…

发表回复

您的电子邮箱地址不会被公开。

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