IP协议深入理解

一、什么是ip协议?

1.1、ip协议是网络层协议,ip协议的本质工作是提供一种能力,把数据可靠的跨网络从主机A送到主机B;
1.2、什么是ip?

ip=目标网络+目标主机;

画图图解:

如图,当主机A想要把数据发给主机B时,需经过主机A所在的网络的路由器进入到网络x,再由网络x经过路由器进入网络2,再从网络2中找到主机B;

1.3 认识ip协议报头

①4位版本

ip协议的版本号,对于ipv4来说就是4;

②4位首部长度:

4个bit位能表示的最大范围是:[0000,1111]即[0 , 15] ,计算单位为4字节,即4个bit位能表示的字节范围是0~60字节,因为ip的报头总长度=固定长度为20字节+选项长度,所以整个报头的长度范围为:20~60字节,也就是选项的最大长度为40字节!

③8为服务类型:

4位 TOS分别表示: 最小延时, 最大吞吐量, 最高可靠性, 最小成本. 这四者相互冲突, 只能选择一个!

④16位总长度:

ip数据报整体占多少字节!!也是就是报头+选项+数据整体长度!!通过整体长度-选项-固定报头长度=数据长度!!通过首部长度和总长度可以实现报头跟有效载荷的分离!!!

⑤8位生存时间:

TTL,数据报文到达目的地的最大报文跳数,一般是64,每经过一个路由,TTL -1,当减到0还没到达,丢弃这个报文!!

⑥8位协议:

用来决定ip的有载荷向上交个哪一个协议!

⑦32位源IP地址:

自己的IP地址,数据发送的出发地!

⑧32位目的IP地址:

对发方的ip地址,数据到达的目的地!

二、认识路由器

2.1、报文的中转站

假设知道了目标ip但是进入不到对方所在的网络,那么数据一样发送不了给对方!

因此必须要有一个中转站,这个中转站就是连接内网跟外网的路由器!!

ip报文通过路由器进行不断的转发,就能实现跨网络将数据从主机A送达至主机B!!

2.2、路由器的结构

路由器本质上也是内网里的一台主机!!只是这台主机同时存在于至少两个子网内!!也就是说路由器可以同时存在两个ip地址!!我们可以认为它存在多张网卡就行!

2.3、路由器的功能

路由器一般是子网中的第一台设备,一般他的ip地址都是网络号!

路由器除了有转发ip的功能外,还有一个重要的作用就是构建子网!

DHCP:路由器自动给新增的主机分配ip地址,路由器相当于一台DHCP服务器!!

2.4 所以其实我们数据传输是这样的

三、网段划分

3.1、IP地址划分为网络号+主机号

网络号:保证相互连接的两个网段具有不同的标识;
主机号: 同一网段内, 主机之间具有相同的网络号, 但是必须有不同的主机号

图解:

3.2、这些ip地址是怎么来的?

由一开始进行网络基站建设的运营商联合规定出来的ip地址划分:

上图是曾经的五种IP地址分类,这种分类方法会导致大多数的ip被浪费掉:

例如:

申请了一个B类地址, 理论上一个子网内能允许6万5千多个主机. A类地址的子网内的主机数更多. 
然而实际网络架设中, 不会存在一个子网内有这么多的情况. 因此大量的IP地址都被浪费掉了!

新的方案CIDR:

①、引入一个额外的子网掩码(subnet mask)来区分网络号和主机号;

②、子网掩码是一个32位的正整数;

③、将ip地址和子网掩码进行按位与操作得到的就是网络号;

④、网络号和主机号的划分和这个IP地址是A、B、C。。类无关;

例1:

例2:

可见,IP地址与子网掩码做与运算可以得到网络号, 主机号从全0到全1就是子网的地址范围;

IP地址和子网掩码还有一种更简洁的表示方法,例如140.252.20.68/24,表示IP地址为140.252.20.68, 子网掩码的高 24位是1,也就是255.255.255.0 

3.3、特殊的ip地址

网络号:子网地址范围中首个地址

广播号:子网地址范围中最后一个地址

本地环回测试地址:127.0.0.1

3.4、面对ip地址不足的解决方法

① 动态分配IP地址,只给入网设备分配IP地址,退网回收ip;

②NAT技术

③IPV6,16字节128位表示一个ip地址

四、公有IP地址和私有IP地址

4.1、一般我们平时使用的都是私有ip,只有向云服务器、运营商用到的才是公网ip地址;

如图:

①、一个路由器可以配置两个IP地址,一个为WAN口,一个为LAN口ip(子网ip);

②、连接LAN口的主机从属于这个路由器的子网中;

③、同一子网不可能出现相同IP地址,不同子网的ip地址可能出现相同;

④、一个内网的ip地址是不可能出现在公网中,所以子网内的主机想要访问公网时,路由器会将ip地址进行替换,目标地址保持不变,源ip地址替换为路由器的WAN口ip地址,,这样逐级替换就能访问到公网了,这种技术称为NAT技术

好了今天分享到这里,如果对你有所帮助记得点赞收藏+关注哦!!谢谢!!!

咱下期见!!!

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

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

相关文章

接收表单数据:serialize()函数解析

一、form-serialize作用与引入 作用: form-serialize可以快速收集表单数据,按照使用者意愿转化为对象或字符串输出,以便于提交至服务器。 引入: form-serialize不是浏览器自带的JS方法,而是第三方工具库。可以直接通过…

vc配置使用预编译

预编译原理 stdafx.h中加入系统文件,减少cpp中对这些文件的解析,提高速度 stdafx.h 会把编译的文件生成pch,后续解析头文件直接调用pch里面的数据 配置 新建stdafx.h和stdafx.cpp文件 配置stdafx.cpp文件为/Yc 创建预编译文件整个项目设置/Yc…

反射机制的登录系统

一、实体层(po层) //UserInfo package com.hugeyurt.po;import java.sql.ResultSet; import java.sql.SQLException;public class UserInfo {private String userID;private String name;private int count;private Long errorTime;private String pwd;p…

装饰器模式及优化

装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许向一个现有的对象添加新的功能,同时又不改变其结构。这种模式创建了一个装饰器类,用来包装原有的类,并在保持类方法签名完整性的前提下&#xff…

共指消解技术全解析:从语言学规则到深度学习(附论文精读)

精读威斯康星大学综述《Coreference Resolution: A Survey》,揭秘NLP中"实体链接"的核心技术一、什么是共指消解?为什么它是NLP的基石?共指消解(Coreference Resolution) 旨在识别文本中指向同一实体的不同表述。例如:t…

git配置git commit -m “fix 11,22: 修改bugid为11,22“

文章目录前言一、报错提示二、实现1.commitlint.config.js规范配置2. **修改正则表达式**:3. **移除 scope-case 规则**:4. **增强自定义规则逻辑**:测试结果:正则表达式详解:前言 提示:正常的配置git规范…

nastools继任者?极空间部署影视自动化订阅系统『MediaMaster』

nastools继任者?极空间部署影视自动化订阅系统『MediaMaster』 哈喽小伙伴们好,我是Stark-C~ 对于我们NAS玩家来说,观影总是大家绕不开的一个执念,并且为观影的折腾大家也都是乐此不疲~ 曾经有一个非常绝绝子的观影神器摆在我们…

题解:CF1690G Count the Trains

思路: 首先我们可以理清一下各种情况:1)m可能为02)一次操作时,只需要考虑每节火车的车头。3)当一节火车的速度降低时,只会影响它及它后面的车厢当m0时,我们可以记录上一节车头的速度…

CCF编程能力等级认证GESP—C++3级—20250628

CCF编程能力等级认证GESP—C3级—20250628单选题(每题 2 分,共 30 分)判断题(每题 2 分,共 20 分)编程题 (每题 25 分,共 50 分)奇偶校验分糖果单选题(每题 2 分,共 30 分…

2G和3G网络关闭/退网状态(截止2025年7月)

从能打语音电话的2G,到能发彩信、聊QQ的3G,这两项陪伴了我们数十年的通信技术,正在悄然退出历史舞台。近日,全球移动供应商协会(GSA)发布的《2025年7月2G和3G网络关闭报告》显示,全球已有超百个…

Day06_C语言网络编程20250718mobus重点

01.思维导图1 什么是 modbus他是一个在工控领域非常好用的通信写 modbus协议本质上是一个 基于 tcp 协议二次封装的一个协议 什么叫做基于tcp二次封装的协议:我们自己写的pack_t(无论静态还是动态),都是属于二次封装的协议modbus协议是一种 “主从问答式…

比亚迪古德伍德亮相:从技术突破到文化对话

近日,比亚迪携腾势Z9GT、方程豹豹5、腾势D9亮相英国古德伍德速度节——全球最具声望的汽车文化盛典。方程豹豹5搭载全球首个 DMO电驱越野平台,在爬山赛道上展现出媲美性能跑车的动力响应与精准控制,彻底打破“越野必靠大排量燃油机”的西方传…

UniApp TabBar 用户头像方案:绕过原生限制的实践

需求场景: 在 UniApp 项目中,需要将 TabBar 首页项 (index) 的图标替换为当前用户的网络图片,并实现: 放大且圆形显示。点击该图标时,页面滚动回顶部。切换到其他分类时,首页 Tab 项恢复为普通首页图标。 尝…

如何阅读Spring源码

如何阅读Spring源码 简介 最近有许多人问我如何阅读Spring源码,那我便在这给出阅读源码的方法,能够保证本地能够让源码能够运行起来。 Spring 源码环境本地编译 Gradle下载地址 通过网盘分享的文件:gradle-6.4.1-all.zip 链接: https://pan.b…

Excel导出实战:从入门到精通 - 构建专业级数据报表的完整指南

文章目录Excel导出实战:从入门到精通 - 构建专业级数据报表的完整指南引言:ExcelJSFileSaver如何映射到Excel操作一、ExcelJS核心架构解析 - 从文件结构理解1. 工作簿(Workbook)模型 - 相当于整个Excel文件2. 工作表(Worksheet)配置 - 相当于单个工作表设…

PyTorch图像预处理全解析(transforms)

1. 引言在深度学习计算机视觉任务中,数据预处理和数据增强是模型训练的关键步骤,直接影响模型的泛化能力和最终性能表现。PyTorch 提供的 torchvision.transforms 模块,封装了丰富的图像变换方法,能够高效地完成图像标准化、裁剪、…

slam中的eskf观测矩阵推导

在之前的《slam中的eskf推导》一文中,没有写观测矩阵 H 矩阵的过程,现在补上这部分。前置列举几个等下推导需要用到的一些点:平面特征点构造观测矩阵例如在 fastlio 中,是利用平面特征点到拟合平面的距离来构造观测方程&#xff0…

Python_2

逻辑判断 首先得首先&#xff0c;我们想判断一个逻辑的正确与否&#xff0c;一定是需要一个能够表现出逻辑的词 如果我只说一个1 2&#xff0c;那么大家都不知道我在说什么但是如果我说1<2,那么大家就能判断这个语句的正确与否了 下面是几个常用的逻辑词 < 小于>大于&…

Liunx-Lvs配置项目练习

1.实验环境配置Lvs调度器有两块网卡 一块仅主机和一块nat网卡&#xff0c;客户端nat模式&#xff0c;两台服务器为仅主机模式2.集群和分布式简介集群与分布式系统简介集群 (Cluster)集群是指将多台计算机(通常为同构的)通过高速网络连接起来&#xff0c;作为一个整体对外提供服…

T5(Text-to-Text Transfer Transformer) 模型

下面是对 T5&#xff08;Text-to-Text Transfer Transformer&#xff09; 模型的详细介绍&#xff0c;包括其原理、架构、训练方式、优势与局限&#xff0c;以及与其他模型&#xff08;如 BERT、GPT&#xff09;的对比。一、T5 是什么&#xff1f;T5&#xff08;Text-to-Text T…