【T02】理解子网和CIDR的概念
1、IP地址分为5类,A、B、C、D、E,它们的前缀分别是:
A:0 网络个数2^7,主机个数2^24,大概1千6百万
B:10 网络个数2^14,大概1万6千,主机个数2^16,大概6万5千
C:110 网络个数2^21,大概2百万,主机个数2^8,254个
D:1110 用于多播编址
E:1111 留作未来使用
注意:对于主机号,全0和全1特殊用处,因此可用的地址要减去2
2、子网划分,IP地址分为网络ID和主机ID,考虑B类的主机ID,可以容纳6万5千个主机,现实中根本用不了这么多,
因此在内部(比如局域网)可以从主机ID中,划出一部分作为子网。如果子网掩码相同,可以认为主机在同一个网络中。
3、广播地址分为以下情况:
有限广播为255.255.255.255,路由器从不转发这种数据报,局域网内的所有主机可以收到
网络直接广播为指定网络ID,主机ID全部设为1,传送到目标网络的所有主机
子网直接广播为指定网络ID和子网ID,子网内的所有主机收到数据报
4、对于C类地址,能够容纳主机个数太少,需要网络ID减少,这可以认为CIDR(Classless Inter Domain Routing 无类别域间路由)
子网掩码是加长网络ID,而CIDR使其变短,同时指定网络掩码。
虽然B类地址,加上子网掩码,也类似C类地址缩短网络号,但是B类地址从外部用来看,认为网络号还是不带子网的前缀。
CIDR不按照传统的IP地址分类,而是指定网络掩码,使得IP地址的分配更加有效。
5、为什么CIDR使得IP地址的分配更加有效?
举例来说,现在有3个1000G的硬盘,使用传统的方式,只能进行分区如下:
10个100G的分区,100个10G的分区,1000个1G的分区,分别对应于A类,B类,C类地址。
但是在实际使用中,可能根本不需要10个100G的分区,但是没有办法,只能进行这样进行分区来使用。
而CIDR彻底废弃了这种方法,无分类就是不考虑IP地址所属的类别。
根据实际的需求进行分区,比如第一个1000G的硬盘,可以分成25个40G的分区,或者40个25G的分区,或者200个5G的分区。
6、更重要的一点是,CIDR这种组网技术可以将一组较小的无类别网络汇聚为一个较大的单一路由表项,
减少Internet路由域中路由表条目的数量。
【T02】理解子网和CIDR的概念的更多相关文章
- Netmask, 子网与 CIDR (Classless Interdomain Routing)
Netmask, 子网与 CIDR (Classless Interdomain Routing) 我们前面谈到 IP 是有等级的,而设定在一般计算机系统上面的则是 Class A, B, C.现在我 ...
- ROS学习手记 - 5 理解ROS中的基本概念_Services and Parameters
上一节完成了对nodes, Topic的理解,再深入一步: Services and Parameters 我不理解为何 ROS wiki 要把service与parameter放在一起介绍, 很想分 ...
- 第一次写C语言小程序,可以初步理解学生成绩管理系统的概念
1 成绩管理系统概述 1.1 管理信息系统的概念 管理信息系统(Management Information Systems,简称MIS),是一个不断发展的新型学科,MIS的定义随着科技的进步也在 ...
- 深入理解IP之CIDR
现代IP基于分类的IP越来越少,而基于CIDR的方式的越来越多.那么可以看下面这篇文章: https://www.cnblogs.com/hark0623/p/6547432.html 这篇文章对CI ...
- Linux从头学11:理解了这三个概念,才能彻底理解任务管理和任务切换
作 者:道哥,10+年的嵌入式开发老兵. 公众号:[IOT物联网小镇],专注于:C/C++.Linux操作系统.应用程序设计.物联网.单片机和嵌入式开发等领域. 公众号回复[书籍],获取 Linux. ...
- 读《深入理解Elasticsearch》点滴-基础概念
Lucene的概念 document:以json的形式体现,搜索和搜索的主要载体 field:document的一个部分 term(词项):代表文本中的一个词 token(词条):term在field ...
- 「Flink」理解流式处理重要概念
什么是流式处理呢? 这个问题其实我们大部分时候是没有考虑过的,大多数,我们是把流式处理和实时计算放在一起来说的.我们先来了解下,什么是数据流. 数据流(事件流) 数据流是无边界数据集的抽象 我们之前接 ...
- 理解OC“属性”这一概念
1.定义一个属性,编译器会自动编写相关的存取方法和实例变量,如果不想使用系统默认的实例变量,可以使用@synthesize(合成)语法来指实例变量的名字,如果不想编译器自动合成存取方法,则可以自己实现 ...
- 简单理解SNAT回流中的概念:路由器怎么知道外网返回的数据是局域网中哪台主机的
内网到外网用的是NAT技术(地址封装)外网到内网用的是端口映射(PNAT)计算机的端口又65535(0-65534),你说的那些有名气的端口大多都是0-1023之间的你说的这个问题很简单,但首先你要懂 ...
随机推荐
- java.lang.Math
四舍五人 System.out.println(Math.round(1.8f));//输出位2 static(静态)方法random() //: object/Shifting.java packa ...
- php反射类的使用及Laravel对反射的使用介绍
PHP的反射类与实例化对象作用相反,实例化是调用封装类中的方法.成员,而反射类则是拆封类中的所有方法.成员变量,并包括私有方法等.就如“解刨”一样,我们可以调用任何关键字修饰的方法.成员.当然在正常业 ...
- 方法名太多,使用方法的重载(overload)来解决
package chapter04; /* 问题:方法名太多了,不容易记忆,有时会出错 使用方法的重载(overload)来解决 */public class C09_Method { public ...
- [转] iOS开发工具——网络封包分析工具Charles
简介 Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使 ...
- format 用法及对齐
空格填充: 元素填充(这里是2):
- 洛谷P2347 砝码称重 【多重背包】(方案数)(经典)
题目链接:https://www.luogu.org/problemnew/show/P2347 题目描述 设有1g.2g.3g.5g.10g.20g的砝码各若干枚(其总重<=1000), 输入 ...
- C#并行编程(2):.NET线程池
线程 Thread 在总结线程池之前,先来看一下.NET线程. .NET线程与操作系统(Windows)线程有什么区别? .NET利用Windows的线程处理功能.在C#程序编写中,我们首先会新建一个 ...
- Flutter开发环境(Window)配置及踩坑记录
Flutter 是 Google 用以帮助开发者在 iOS 和 Android 两个平台开发高质量原生 UI 的移动 SDK.Flutter 兼容现有的代码,免费且开源,在全球开发者中广泛被使用. F ...
- Python3 图像边界识别
# -*- coding: utf-8 -*- """ Created on Wed Mar 7 11:04:15 2018 @author: markli " ...
- 基于python语言的经典排序法(冒泡法和选择排序法)
前 每逢周末就遇雨期,闲暇之余,捣鼓了下python,心心念想学习,今天就在电脑上装了个2.7,学习了下经典算法,冒泡与选择排序法 第一次写关于python的文章,说的不当之处,多多指正,我积极改正 ...