有类型地址

news2024/9/20 22:40:13

有类型地址

在这里插入图片描述

子网号:基于网络号上划分。
A,B,C,D,E 类地址开头不同,是为了让网络不重叠。

A 类型

0 开头

网络号:8 位(1 个字节)。
主机号:24 位(3 个字节)

网络地址范围从1.0.0.0到126.0.0.0,

可用网络有 126 (2^7 - 2,网络号除去全0 和全1??)个网络,网络号一个字节 8 位 - 固定 “0” 1 个字节 = 7 个字节。

每个网络可用主机可以达到 1 亿。

B 类:

10 开头
网络号:16 位(2 个字节)
主机号:16 位(2 个字节)

网络地址范围从 128.0.0.0 - 191.255.0.0(第一字节 1000 0000-1011 1111)

可用网络有 16382(2^14 - 2,网络号除去全0 和全1??)个网络地址。网络号两个字节 16 位 - 固定 ”10" 2 个字节 = 14 个字节。

每个网络可用主机 6万多 (2^16-2)。

C 类:

110 开头
网络号:24 位(3 个字节)
主机号:8 位(1 个字节)

网络地址范围从 192.0.0.0 - 223.255.255.0 (第一字节 1100 0000-1101 1111)

可用网络有 2^(24-3) - 2,网络号除去全0 和全1??

每个网络可以用主机 2 ^8 -2 = 254 个。

D 类:

1110 开头

用于多点广播(Multicast)。D类IP地址第一个字节以“lll0”开始,它是一个专门保留的地址。

它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。224.0.0.0到239.255.255.255用于多点广播 。

为什么子网不能全 1 或者全0,需要 -2

参考
https://www.cnblogs.com/xuyinghui/p/6149999.html

子网划分并没有节约IP地址,实际导致可分配的IP地址数目减少。

证明:比如一个C类地址,不进行子网划分,实际可分配IP地址为254个。
现进行子网划分,假设借用2位主机号作为子网号,
那么现在产生的子网为01和10(全0全1子网号去掉),每个子网的主机号为6位,则每个子网可分配的IP地址为2的6次方剪掉2,即62台,
那么两个子网可分配的IP共62*2=124个,
那么减少的IP数目为:254-124=130个。

从上数据可以看出,减少了约一半的IP地址。既然这么浪费IP地址,为何我们还要使用子网划分呢?我个人认为,这是利用子网来方便管理网络的一种措施。

很容易看出,减少这么多IP地址的主要原因是子网号为00(全0)和11(全1)的两个子网去掉了,那为何要去掉“全0全1”的子网号呢?

不应该使用全0全1子网这个规定是源于RFC950标准,但后来RFC950在RFC1878中被废止了。

看看RFC950提到的原因:
假设我们有一个网络:192.168.0.0/24,我们现在需要两个子网,那么按照RFC950,应该使用/26而不是/25,得到两个可以使用的子网192.168.0.64和192.168.0.128
对于192.168.0.0/24,网络地址是192.168.0.0,广播地址是192.168.0.255
对于192.168.0.0/26,网络地址是192.168.0.0,广播地址是192.168.0.63
对于192.168.0.64/26,网络地址是192.168.0.64,广播地址是192.168.0.127
对于192.168.0.128/26,网络地址是192.168.0.128,广播地址是192.168.0.191
对于192.168.0.192/26,网络地址是192.168.0.192,广播地址是192.168.0.255

你可以看出来,对于第一个子网,网络地址和主网络的网络地址是重叠的,对于最后一个子网,广播地址和主网络的广播地址也是重叠的。这样的重叠将导致极大的混乱。比如,一个发往192.168.0.255的广播是发给主网络的还是子网的?这就是为什么在当时不建议使用全0和全1子网。

然而,人们认识到子网划分的IP地址浪费严重,后来IETF就研究出了其他一些技术,比如可变长子网掩码VLSM,该技术是在子网上进一步划分子网,可提高IP地址资源的利用率;后来在此基础上研究出了无类别域间路由CIDR,即消除了传统的A/B/C等分类以及划分子网,才是采用网络前缀和主机号的方式来分配IP地址,这使得IP地址的利用率更好。这两者的具体技术暂时不阐述。

就目前来说,现在可以使用全0和全1子网。但我们现在学习时,还强调子网划分时要去掉全0全1,这是何道理呢?我个人认为:
(1)目前有些网络建设较早,设备也不更新,老设备可能不支持CIDR,那么也就不支持全0全1的子网了。
(2)我们建企业网(单位网络)时,一般是使用私有地址来分配内部主机,小企业使用C类的192.168.0.0网络,中型企业使用172.16.0.0(私有部分)网络,如果还不够用,还有10.0.0.0网络。

既然私有地址如此丰富,为何不去掉全0全1的子网呢?因为真要使用全0全1的子网,还需要在路由器上进行一些特殊的配置。

那么怎样区分192.168.10.0到底是哪个网络的网络地址呢?
答案是:把子网掩码加上去!
192.168.10.0 255.255.255.0 是大C的网络地址,192.168.10.0 255.255.255.224 是第一个子网的网络地址,192.168.10.255 255.255.255.0是大C的广播地址,192.168.10.255 255.255.255.224是最后一个子网的广播地址。带上掩码,它们的二意性就不存在了。
所以,在严格按照TCP/IP ABCD给IP地址分类的环境下,为了避免二意性,全0和全1网段都不让使用。这种环境我们叫作Classful。在这种环境下,子网掩码只在所定义的路由器内有效,掩码信息到不了其它路由器,比如RIP-1,它在做路由广播时根本不带掩码信息,收到路由广播的路由器因为无从知道这个网络的掩码,只好照标准TCP/IP的定义赋予它一个掩码。比如,拿到10.X.X.X,就认为它是A类,掩码是255.0.0.0;拿到一个204.X.X.X,就认为它是C类,掩码是255.255.255.0。
但在Classless的环境下,掩码任何时候都和IP地址成对地出现,这样,前面谈到的二意性就不会存在,是Classful还是Classless取决于你在路由器上运行的路由协议,一个路由器上可同时运行Classful和Classless的路由协议。RIP是 Classful,它在做路由广播时不带掩码信息;OSPF,EIGRP,BGP4是Classless的,它们在做路由广播时带掩码信息,它们可以同时运行在同一台路由器上。
在Cisco路由器上,缺省你可以使用全1网段,但不能使用全0网段。所以,当在Cisco路由器上给端口定义IP地址时,该IP地址不能落在全0网段上。如果你配了,你会得到一条错误信息。使用IP SUBNET-ZERO命令之后,你才能使用全0网段。
要强调的是,使用了IP SUBNET-ZERO命令之后,如果路由协议使用的是Classful的(比如RIP),虽然你的定义成功了,但那个子网掩码还是不会被RIP带到它的路由更新报文中。即,IP SUBNET-ZERO 命令不会左右路由协议的工作。
总之,TCP/IP协议中,全0和全1网段因为具有二意性而不能被使用。Cisco 缺省使全1网段可以被使用,但全0网段只有在配置了IP SUBNET-ZERO后方可被使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/802624.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

windows环境下adb 下载和配置,连接手机。

ADB下载地址: https://adbdownload.com/ 选择下载windows系统的。 下载后解压,查看adb.exe所在的目录,如下 这里将路径复制下来:D:\ADB 配置到系统环境变量中。 然后再打开cmd,输入adb version查看版本。 出现…

Centos7.9 离线部署ChatGLM-6B

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。ChatG…

【stable diffusion】保姆级入门课程06-Stable diffusion(SD)图生图-上传蒙版及批量处理的用法

目录 0.本章素材 1.什么是上传蒙版 1.1.注意点 1.2.提示词部份 2.批量处理 3.涂鸦、局部重绘、涂鸦蒙版、上传蒙版 4.结语 0.本章素材 案例图链接:https://pan.quark.cn/s/3a64e682e311 案例图蒙版链接:https://pan.quark.cn/s/075f889af9c0 1.什…

了解Unity编辑器 之组件篇Effects(十一)

一、Halo:是一个可用于游戏对象的特效组件,它可以在对象周围添加一个光晕效果 Color属性: 用于设置Halo的颜色。你可以通过选择颜色面板中的颜色来指定光晕的外观。选择适当的颜色可以使光晕与游戏场景中的其他元素相匹配或突出显示。 Size属性: 用于设…

Kubernetes 之CNI 网络插件大对比

介绍 网络架构是Kubernetes中较为复杂、让很多用户头疼的方面之一。Kubernetes网络模型本身对某些特定的网络功能有一定要求,但在实现方面也具有一定的灵活性。因此,业界已有不少不同的网络方案,来满足特定的环境和要求。 CNI意为容器网络接…

华为数通HCIP-MPLS

传统ip转发 路由器根据流量的dip查找路由表进行转发; 缺陷:查找路由表需要消耗一定CPU开销;(可以通过FIB表解决) 安全性低,中间转发设备可以看到网络层ip信息; FIB(转发信息库) 定…

Jmeter性能测试之正则表达式提取器

目录 前言 1. Jmeter正则表达式提取器 2. 入门实例 3. 进阶实例 前言 Jmeter正则表达式提取器属于Jmeter后置处理器(post processors)的一种,用于将取样器请求到的结果以正则表达式的方式读取出来。 1. Jmeter正则表达式提取器 1. 作用…

npm yarn nrm

npm 和 yarn npm和yarn都是包管理器,yarn是在2016年发布的,那时npm还处于V3时期,那时候还没有package-lock.json文件,不稳定性、安装速度慢等缺点经常会受到广大开发者吐槽。此时,yarn 诞生了。yarn 的优点&#xff0c…

iMessage 开发要点 坑点记录

pod 添加iMessage后,建议podfile要这样: platform :ios, 14.0def commonPod//这里写一些主应用和iMessage都要依赖的库pod "YYKit", ~> 1.0.9 endtarget MainApp doframeworksuse_frameworks!inhibit_all_warnings!# 多Target都有的podco…

【Lua学习笔记】Lua进阶——Require,三目运算

文章目录 Require短路判断实现三目运算符 Require 这是文件aaa.lua的内容 aaa.lua: a 10 local b 20 print("我是aaa")这是文件example.lua的内容 example.lua: a 100 print(a) require("aaa") --require调用其他脚本文件 print(a) print(b) print(&…

亚马逊云科技全新Amazon Bedrock,助力客户构建生成式AI应用

亚马逊云科技近日在纽约峰会上宣布全面扩展其全托管基础模型服务Amazon Bedrock,包括新增Cohere作为基础模型供应商,加入Anthropic和Stability AI的最新基础模型,并发布变革性的新功能Amazon Bedrock Agents功能。客户无需管理任何基础设施&a…

ceph集群中RBD的性能测试、性能调优

文章目录 rados benchrbd bench-write测试工具Fio测试ceph rbd块设备的iops性能测试ceph rbd块设备的带宽测试ceph rbd块设备的延迟 性能调优 rados bench 参考:https://blog.csdn.net/Micha_Lu/article/details/126490260 rados bench为ceph自带的基准测试工具&am…

OnnxRuntime TensorRT OpenCV::DNN性能对比(YoloV8)实测

1. 前言 之前把ORT的一套推理环境框架搭好了,在项目中也运行得非常愉快,实现了cpu/gpu,fp32/fp16的推理运算,同onnx通用模型在不同推理框架下的性能差异对比贴一下,记录一下自己对各种推理框架的学习状况 YoloV8模型大小 模型名称参数量NANO3.2M...... 2. CPU篇 CPU推理框架性…

【三维重建】SceneRF:基于NeRF的自监督单目三维场景重建

文章目录 摘要一、前言二、方法2.1.用于新的深度合成的NeRF3.1.1 深度估计 3.2 概率射线采样 (PrSamp)3.3 球形Unet(SU-net)3.4.场景重建方案 四、实验总结 摘要 从二维图像的三维重建被广泛的研究,训练与深度监督。为了放松对昂贵获取的数据…

火爆全网,Charles抓包教程-辅助接口测试(一)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 charles是一款非常…

【C++进阶】多态的理解

一.多态是什么 多态是在不同继承关系的类对象,去调用同一函数,产生了不同的行为。 对于多态,不同的对象传过去,会调用不同的函数; 即多态调用看的是指向的对象。 //A,B类中的func函数是个多态 class A { pu…

自制Nuget包(C#)

自制Nuget包 自制C# Nuget包。 目的: 生成一个可以通过Nuget管理自动应用的包,生成效果如图: 步骤: 整个制作过程分为两步:第一步制作Nuget包,第二步上传Nuget包到Nuget网站(地址&#xf…

Redis实战(2)——互斥命令用于构建分布式锁

1 什么是分布式锁 在单体应用中,线程锁是可以让多个线程串行执行一段代码逻辑的。不过在集群环境或者是分布式的环境下,线程锁无法保证线程串行运行,从而出现线程安全的问题。 根本的原因在于,在 集群分布式环境下 \textcolor{r…

F12 浏览器调试模式页面刷新 network 日志刷新消失的解决办法

每次请求刷新后都把之前的请求记录刷新掉了,把preserve log勾选上后,所有的请求都会保留,再也不怕抓不到记录了。

配置 gitlab https 访问

文章目录 1. 备份2. 生成SSL证书3. 配置文件4. 重启5. 访问 1. 备份 docker exec -ti gitlab-ce gitlab-rake gitlab:backup:create2. 生成SSL证书 yum install openssl openssl-devel -y mkdir /data/gitlab/config/ssl ; cd /data/gitlab/config/ssl### 生成证书 openssl…