网络层协议及IP编址

0x00 前言

本节为网络层协议及IP编址内容

IP地址的范围:0.0.0.0-255.255.255.255

IP分为网络位以及主机位。子网划分就是向主机位借位。

网络层协议

  • IP
  • ICMP(internet Control message protocol)
  • IPX

IP协议的作用

  • 为网络层的设备提供逻辑地址
  • 负责数据包的寻址和转发

什么是封装

协议栈逐层向下传递数据,并添加报头和报尾的过程称为封装。

IP报文格式

在这里插入图片描述

数据包分片

什么是数据包分片

将报文分割成多个片段的过程叫做分片

什么是TTL,作用是什么

TTL是生存时间,没经过一台三层设备TTL减1,如果TTL降为0,报文会被抛弃,主要是为了避免出现环路。IPV4中默认是64,v6 128

ICMP的作用

用来在网络设备之间传递各种差错和控制信息,主要用于收集网络信息,诊断和排查各种网络错误

什么是ICMP的重定向

在特定的情况下,当路由器检测到一台机器使用的非最优路由的时候就会发送ICMP重定向报文

IP地址规划的目标是:

  • 易管理
  • 易扩展
  • 利用率高

IP地址规划的原则有

  • 唯一性
  • 连续性
  • 扩展性
  • 结构化、业务相关性

知识补充

ip

IP是指互联网协议(Internet Protocol),是一种网络通信协议,用于规定网络中数据的传输方式和地址分配方式。IP是互联网的基础,它定义了在网络中传输数据的规则和格式。

IP地址是用来唯一标识网络中的设备的。它由32位或128位的二进制数字组成,通常以点分十进制的形式表示。IP地址分为公有IP地址和私有IP地址两种类型。公有IP地址是全球唯一的,用于互联网上的设备进行通信;私有IP地址则是在局域网内使用,一般用于家庭或企业内部的计算机设备之间进行通信。

在IP协议中,数据被分割为数据包(Packet)进行传输。每个数据包包含了目的地的IP地址和源IP地址,以及其他一些控制信息。IP协议还负责将数据包从源设备传送到目标设备,通过路由器的转发和路由选择算法来实现。

除了IP协议之外,还有其他协议和技术与之相关,如ICMP(Internet Control Message Protocol)用于传递错误和控制消息,以及TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)用于在IP上建立可靠的数据传输连接。

ICMP

ICMP(Internet Control Message Protocol)是一种用于在IP网络上传输控制消息的协议。它通常与IP协议配合使用,通过发送控制消息来检测网络连接性、进行错误报告和网络状况测量等。

ICMP主要有以下几个功能:

  1. 错误报告:当网络中发生错误时,ICMP可以生成相应的错误报告消息,如目的主机不可达、端口不可达等。

  2. 网络状况测量:ICMP可以通过发送特定的请求消息来测量网络的延迟和丢包率,常用的包括ping和traceroute命令就是基于ICMP的。

  3. 路由选择:通过发送源站选路请求和路由选择报文,ICMP可以帮助选择最佳的路由路径。

  4. 重定向功能:当一个路由器接收到一个数据包,发现下一跳路由器有更好的路径时,可以通过发送重定向报文通知发送方使用新的路径。

ICMP消息可以通过IP数据报进行传输,它的头部由一些固定字段组成,包括类型、代码、校验和等字段。不同类型和代码的消息有不同的目的和功能。

IPX

IPX(Internetwork Packet Exchange)是一种网络通信协议,最初由Novell开发用于其NetWare操作系统。它是一种基于面向连接的通信协议,用于在计算机网络中传输数据。IPX协议主要用于局域网(LAN)中的通信,以在网络上的不同设备之间进行数据传输。

IPX协议的工作方式类似于Internet协议(IP),但有一些关键的区别。与IP协议不同,IPX协议使用基于网络地址的寻址,其中每个设备都有一个唯一的网络地址。数据包通过在网络中自动路由来传输,以便到达目标设备。IPX协议还包括一个带有错误检测和确认机制的可靠数据传输协议。

IPX协议在1983年首次发布,并成为NetWare网络的主要通信协议。它提供了一种简单的方式来在网络上进行文件共享和打印机共享,并支持许多其他网络应用程序。然而,随着互联网的普及,TCP/IP协议替代了IPX协议成为通信的主要协议。

尽管IPX协议在现代计算机网络中的使用相对较少,但仍然可以在一些老旧的网络环境中找到它的应用。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

程序语言相关知识——偏向Eigen矩阵

1 查看 Eigen库表示的矩阵 方法 1.1 列矩阵x在监视中,这样查看,数值右侧的圈圈 可用于更新数值 随程序 1.2 比较全的方法:来自于知乎:https://zhuanlan.zhihu.com/p/625334009?utm_id0 1.3 eigen的用法:https://ww…

linux高级管理——Squid代理

一、squid服务基础: 1.1缓存代理的概述: 代理的工作机制 当客户机通过代理来请求Web页面时.指定的代理服务器会先检查自己的缓存,如果缓存中已经有客户机需要的页面,则直接将缓存中的页面内容反馈给客户机:如果缓存中…

整合事务,名词,概念

1、MySQL是单进程多线程(而Oracle等是多进程),也就是说MySQL实例在系 统上表现就是一个服务进程,即进程,(通过多种方法可以创建多实例,再安装一个端口号不同的mysql,或者通过workben…

滞回比较器(施密特触发器)在软件中的应用-电池电压显示

1、单限比较器和滞回比较器的区别 在单限比较器中,输入电压在阈值电压附近的任何微小变化,都会引起输出电压的跃变。不管这种微小变化是来源于输入电压还是来源于外部干扰。因此,虽然单限比较器很灵敏,但是抗干扰能力差。在单限比…

学习Redis缓存

学习Redis缓存 NoSQL和SQL的区别缓存缓存作用缓存成本添加Redis缓存 Redis特征Redis中数据结构Redis通用命令String类型Key的层级格式Hash类型Redis的Java客户端 NoSQL和SQL的区别 缓存 缓存就是数据交换的缓冲区,是存储数据的临时地方,一般读写性比较高…

10款有趣的前端源码分享(附效果图及在线演示)

分享10款非常有趣的前端特效源码 其中包含css动画特效、js原生特效、svg特效以及小游戏等 下面我会给出特效样式图或演示效果图 但你也可以点击在线预览查看源码的最终展示效果及下载源码资源 自毁按钮动画特效 自毁按钮动画特效 点击打开盒子可以点击自毁按钮 进而会出现自毁…

使用Python+selenium3.0实现第一个自动化测试脚本

这篇文章主要介绍了使用Pythonselenium实现第一个自动化测试脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 最近在学web自动化,记录一下学习过程。…

Linux驱动学习—中断

1、中断基础概念 1.1 什么是中断 CPU在正常运行期间&#xff0c;由外部或者内部引起的时间&#xff0c;让CPU停下当前正在运行的程序&#xff0c;转而去执行触发他的中断所对应的程序&#xff0c;这就是中断。 响应中断的过程&#xff1a; <1>中断请求 <2>中断…

Spring Cloud之OpenFeign异常处理

简易原理图 原理基于请求头传递错误消息&#xff0c;利用aop和全局异常拦截机制实现。 服务提供者 远程调用本地方法b&#xff0c;throw异常出来FeignExceptionAspect AOP拦截处理异常到请求头中&#xff0c;继续throwGlobalExceptionHandler处理&#xff0c;返回响应Respons…

1868_C语言单向链表的实现

Grey 全部学习内容汇总&#xff1a; GitHub - GreyZhang/c_basic: little bits of c. 1868_C语言中简单的链表实现 简单整理一下链表的实现&#xff0c;这一次结合前面看到的一些代码简单修改做一个小结。 主题由来介绍 以前工作之中链表的使用其实不多&#xff0c;主要是…

C++动态内存分配(动态内存分配函数)栈区

内存拷贝函数&#xff1a; void *memcpy(void *dest,const void *src,size_tn);#include<string.h>功能&#xff1a;从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest内存地址的起始位置 分配内存使用new 例如&#xff1a;salarynew int[num]; 最后需要释放…

三、Qt核心与Qt类库

一、Qt核心&#xff1a;元对象系统 1、Qt核心特点 Qt对标准C进行了扩展&#xff0c;引入了一些新的概念和功能元对象编译器&#xff08;MOC&#xff09;是一个预处理器&#xff0c;先将Qt的特性程序转为标准C程序&#xff0c;再由标准C编译器进行编译Qt为C语言增加的特性在Qt…

Android学习(三):在Android虚拟机中运行项目

Android学习&#xff08;三&#xff09;&#xff1a;在Android虚拟机中运行项目 一、前期准备 在系统环境变量中添加ANDROID_SDK_HOME&#xff0c;把值指定到一个其他目录。就可以把Android AVD(虚拟机)创建在指定目录下。修改环境变量后&#xff0c;如果Android Studio是在运…

Java Swing手搓童年坦克大战游戏(I)

前言 业余偶尔对游戏有些兴趣&#xff0c;不过这样的时代&#xff0c;硬件软件飞速进步&#xff0c;2D游戏画面都无比精美&#xff0c;之前的8bit像素游戏时代早就过去了&#xff0c;不过那时候有许多让人印象深刻的游戏比如魂斗罗、超级玛丽、坦克大战(Battle City)等等。 学…

1866_FreeRTOS的存储管理方案heap_4分析

Grey 全部学习内容汇总&#xff1a; GitHub - GreyZhang/g_FreeRTOS: learning notes about FreeRTOS. 1866_FreeRTOS的存储管理方案heap_4分析 对FreeRTOS的heap_4进行分析拆解&#xff0c;按照文学式编程的方式重新组织成个人笔记。 主题由来介绍 free以及malloc这样的存…

辗转相除法求最大公约数

介绍 辗转相除法&#xff08;又称欧几里德算法&#xff09;是一种求最大公约数的算法。它基于这样一个事实&#xff1a;两个数的最大公约数等于较大数和较小数余数的最大公约数。即两个数相除&#xff0c;再将除数和余数反复相除&#xff0c;当余数为0时&#xff0c;取当前除法…

Python异常捕获和处理语句 try-except-else-finally

目录 try-except-else-finally语句 1. 基本用法 2. 多个异常处理 3. 处理所有其他异常 4. 多个except子句 5. 使用else子句 6. 使用finally子句 7. 使用as关键字 实例 例1 例2 例3 例4 例5 例6 例7 例8 结论 try-except-finally语句 在Python中&#xff0c;try-e…

概率论与数理统计 知识点+课后习题

文章目录 &#x1f496; [学习资源整合](https://www.cnblogs.com/duisheng/p/17872980.html)&#x1f4da; 总复习&#x1f4d9; 选择题&#x1f4d9; 填空题&#x1f4d9; 大题1. 概率2. 概率3. 概率4. P5. 概率6. 概率密度函数 F ( X ) F(X) F(X)7. 分布列求方差 V ( X ) …

【STM32】STM32学习笔记-DMA直接存储器存储(23)

00. 目录 文章目录 00. 目录01. DMA简介02. DMA主要特性03. 存储器映像04. DMA框图05. DMA基本结构06. DMA请求07. 数据宽度与对齐08. 数据转运DMA09. ADC扫描模式DMA10. 附录 01. DMA简介 小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx、STM32F102xx和STM32F…