news 2026/6/9 23:18:17

基础IP协议知识

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基础IP协议知识

网络层最主要的协议就是IP协议,IP协议最主要的工作有两个

一个地址管理,使用IP地址这个概念,标识网络上某个设备的位置

二是路由选择,在两个通信节点之间选一个合适的路径

IP协议的数据报

  1. 四位版本

这里主要使用的是IPV4和IPV6,使用最多的还是IPV4

  1. 四位首部长度

IP协议报头的长度,和TCP一样,使用的是4个字节为一个单位,也就是15*4=60字节

  1. 八位服务类型

决定了IP协议的工作方式

每次只能选一个,可以进行转换(和赛罗转形态差不多)

  1. 十六位总长度

一个IP数据报的长度64kb

虽然和UDP的一样,但是在IP协议内封装好了拆包和组包的功能,这可以让IP协议在传输一个较大的TCP协议的时候,可以把他拆成很小,然后再组合

  1. 拆包和组包

16位标识:

拆包:会把拆出来的多个包,设置相同的标识

组包:会把相同标识的包组合到一起

3位标识符

第一位:预留位,现在还没用

第二位:标志位,标记这个数据包是否进行了拆包的操作

第三位:表示这个包是否是最后的一位

13位片偏移

按照大小进行排序,小在前大在后

  1. 八位生存时间

表示一个IP数据报,能够在网络上传播的最大时间,这个时间使用的单位是次数,每经过一个TTL的值就会加一,如果当TTL减到0,就说明丢包了

Windows默认TTL是128

这里转发了19次,经过了19个路由器

  1. 八位协议

这里指的是分用的时候,IP协议解析IP数据报的时候,载荷交给上层处理,上层是UDP还是TCP,这里就是区分UDP还是TCP

  1. 十六位首部校验和

IP协议会自行检验报头部分的内容是否正确

  1. 源IP和目的IP

这里是IP协议的核心部分

IP协议的本质上是通过32位的整数来表达的,单位为了方便阅读,所以就会把IP写作点分十进制

用三个点划分成四个部分

每个位置的取值都是0-255

IP不够用咋办?

方案一 动态分配IP

每个设备上网的时候分配IP,不上网就不分配IP

治标不治本

方案二 NAT机制 网络地址转换

把IP分成两类

  1. 外网IP/公网IP
  2. 内网IP/私网IP

10*

172.16-172.31*

192.168*

这三个开头都属于内网

在NAT机制下,网络通讯是如何进行的?

  1. 在同一个局域网下,设备A访问设备B

由于IP本身不重复,可以正常访问(如果你手动把两个设备的IP调成一样,就会导致两个设备都上不了网)

  1. 公网设备A访问公网设备B

由于IP本身也不重复,也可以正常访问

  1. 不同的局域网,设备A直接访问设备B

NAT机制不允许这样的访问方式,A和B都属于私有IP

  1. 局域网设备A访问公网设备B

网络地址映射

  1. 公网设备A访问局域网设备B

内网穿透,VPN

这两个和NAT本质上都不冲突,都是借助其他带有公网IP的设备进行转发

NAT机制

举例子

在局域网中,每台机器都有一个私有IP,这个在同一个局域网中是不会重复的,如果需要访问外网,私有的IP会进过NAT的映射机制,就会把IP改成公网的IP,进而去访问你想访问的网址。

都替换成公网的IP,那怎么知道哪个是哪个的?

  1. 首先,会有端口号区分,每个私有IP随机分配的端口号是不一样的,NAT会记住谁是谁
  2. 那如果私有IP分配的端口号一样了咋办

NAT在进行替换的时候,是可以对端口号进行随意替换的,他会记着返回去是谁,哪个端口号就行,至于到他这里转发的端口号就别管

方案三 IPV6

IPV4是使用4个字节作为IP地址

IPV6是使用16个字节作为IP地址

之所以在全国大范围推广IPV6

因为IPV4的地址分配权在美国手里,随时会被卡脖子,所以全国推行IPV6,在需要的时候,可以替换成IPV6

IP地址的其他规则

网段划分

前半部分称为:网络号

后半部分称为:主机号

在同一个局域网中,网络号必须相同,主机号必须不同

在不同的局域网中,网络号必须不同,主机号无限制

子网掩码

255.255.255.0

子网掩码也是一个32位的整数,

规则很死,左边全是1,右边全是0,不能出现1和0交错的现象

简写:192.168.98/24

/24表示的是前24位都是1

如果IP网络号部分和子网掩码部分相同,那么我们就认为他们是在一个局域网下

子网掩码只干两件事

  1. 帮设备区分自己人还是外人

同一个局域网下的子网掩码必须一样,不然无法互相访问,255部分表示是网络号,0部分表示的是主机名字

  1. 决定一个局域网能连接多少台设备

主机号有八位,表示最多可以表示254家用一般支持254台设备

特殊的IP

举例:

192.168.100.0不能这样设置,因为0代表的是这个网络

192.168.100.255广播地址,往这上面发数据包,会被转发到这个局域网的所有设备(投屏类似)

127.0.0.1环回网络,无论你的设备真实IP是啥都可以使用这个表示

192.168.100.1一般认为使用1的都是网关

IP协议的第二个要点

路由选择

简化模型(问路的方式)

在这个过程中,就属于路由选择

因为在真实的网络环境中是十分复杂的,所以任何一个路由器是无法存储所有的网络信息,但是他们会知道自己附近有谁。所以就可以通过类似于问路的情况去找到对应的地址

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 20:54:24

Langchain-Chatchat结合Prometheus实现指标可视化

Langchain-Chatchat 结合 Prometheus 实现指标可视化 在企业级 AI 应用逐渐从“能跑”走向“稳跑”的今天,一个常见的困境浮出水面:我们有了强大的本地知识库问答系统,却对它的运行状态知之甚少。用户偶尔抱怨响应变慢,运维人员翻…

作者头像 李华
网站建设 2026/6/9 21:00:51

Langchain-Chatchat支持的知识库最大容量是多少?

Langchain-Chatchat支持的知识库最大容量是多少? 在企业智能化转型的浪潮中,越来越多组织开始构建自己的私有知识问答系统。一个常见的技术选型是 Langchain-Chatchat ——这个基于 LangChain 框架、专为中文场景优化的本地知识库解决方案,因…

作者头像 李华
网站建设 2026/6/10 13:04:27

33、高级数据绑定与自定义控件开发

高级数据绑定与自定义控件开发 1. 高级绑定功能之优先绑定(PriorityBinding) 1.1 优先绑定的应用场景 优先绑定(PriorityBinding)适用于多种场景。比如在网页加载图片时,在图片下载完成前,会先显示占位符,接着是简短描述,最后才显示真实图片。在数据绑定中,如果想让…

作者头像 李华
网站建设 2026/6/10 19:45:55

49、跨技术互操作性:WPF 与其他技术的集成

跨技术互操作性:WPF 与其他技术的集成 在实际开发中,我们常常会遇到需要在不同技术之间进行集成的情况。本文将详细介绍如何在 WPF(Windows Presentation Foundation)中使用 Windows Forms 控件、ActiveX 控件以及 C++ 代码,同时也会探讨相关的操作步骤、注意事项和限制。…

作者头像 李华
网站建设 2026/6/10 16:04:16

医疗时序填补漏长期依赖,后来补Transformer插补才稳住预警模型

📝 博客主页:jaxzheng的CSDN主页 目录医疗数据科学:当Excel表格遇见听诊器 一、"救命"的体检报告 二、数据洪流里的"找不同" 三、AI医生:别慌!它还没学会开奶茶方子 四、数据孤岛的破冰船 五、隐私…

作者头像 李华
网站建设 2026/6/10 16:03:14

Langchain-Chatchat升级到最新版本的注意事项

Langchain-Chatchat升级到最新版本的注意事项 在企业对数据隐私和合规性要求日益严格的今天,如何构建一个既能理解复杂语义、又能确保信息不外泄的智能问答系统,成为技术团队面临的重要课题。Langchain-Chatchat 作为开源社区中领先的本地知识库解决方案…

作者头像 李华