网络协议分析期末复习(五)
目录
0.前言
1.PC和PPPOE服务器建立连接的流程以及包含LCP配置选项的PPP帧
-Discovery阶段
-Session阶段
-Terminate阶段
包含LCP配置选项的PPP帧如下
2.ARP的步骤以及过程中的具体ARP报文
Step1:查看路由表项以及本地的ARP缓存表
Step2:发送ARP请求广播
Step3:同一广播域内主机对ARP请求报文进行处理
Step4:主机A对ARP应答报文进行处理
3.已知IP包内容,分析报文内容及作用
4.一个节点收到两个IP包的首部如下
0.前言
该篇为网络协议分析的分析题部分,分值一般而言较重,请重点关注!
该篇为网络协议分析的分析题部分,分值一般而言较重,请重点关注!
该篇为网络协议分析的分析题部分,分值一般而言较重,请重点关注!
1.PC和PPPOE服务器建立连接的流程以及包含LCP配置选项的PPP帧
答:PPPoE协议流程
-Discovery阶段
(1)PPPoE Client广播发送一个PADI报文,在此报文中包含PPPoE Client想要得到的服务类型信息。
(2)所有的PPPoE Server收到PADI报文之后,将其中请求的服务与自己能够提供的服务进行比较,如果可以提供,则单播回复一个PADO报文。
(3)根据网络的拓扑结构,PPPoE Client可能收到多个PPPoE Server发送的PADO报文,PPPoE Client选择最先收到的PADO报文对应的PPPoE Server做为自己的PPPoE Server,并单播发送一个PADR报文。
(4)PPPoE Server产生一个唯一的会话ID(SESSION ID),标识和PPPoE Client的这个会话,通过发送一个PADS报文把会话ID发送给PPPoE Client,如果没有错误,会话建立后便进入PPPoE Session阶段。
-Session阶段
可划分为两部分,一是PPP协商阶段,二是PPP报文传输阶段。
PPPoE Session上的PPP协商和普通的PPP协商方式一致,分为LCP、认证、NCP三个阶段。PPPoE Session的PPP协商成功后,其上就可以承载PPP数据报文。
-Terminate阶段
PPP通信双方应该使用PPP协议自身(比如PPP终结报文)来结束PPPoE会话,但在无法使用PPP协议结束会话时可以使用PADT报文。
包含LCP配置选项的PPP帧如下:
自己去看下各个参数的值怎么对应
2.ARP的步骤以及过程中的具体ARP报文
当主机A要与主机B通信时,地址解析协议ARP可以将主机C的IP地址(192.168.1.3)解析成主机C的MAC地址,以下为工作流程:
Step1:查看路由表项以及本地的ARP缓存表
根据主机A的路由表表项,确认其访问主机C的IP地址为192.168.1.3,然后在主机A本地的ARP缓存表检查是否存在主机C对应的MAC地址,如果存在,则直接根据该地址封装报文并转发;如果不存在,则进行下一步;
Step2:发送ARP请求广播
由于主机A的ARP表中不存在主机C对应的MAC地址,则缓存该数据报文,并以广播方式发送ARP报文。
报文内容如下:
OP字段为1表示该报文为ARP请求报文,ARP请求报文中的源MAC地址以及源IP地址为主机A的MAC和IP地址,目的地址的MAC为全0,目的IP为主机C的IP;
Step3:同一广播域内主机对ARP请求报文进行处理
同一广播域下的主机B、C、D都能够收到该请求报文,但只有主机C会对该ARP报文进行处理,主机C比较自己的IP地址和ARP请求报文中的目的IP地址,发现两者一致,进行如下处理:将ARP请求报文中的源IP地址和源MAC地址(即主机A的IP地址和MAC地址)存入自己的ARP表中。之后以单播方式发送ARP应答报文给主机A;
报文内容如下:
OP字段为2表示该报文为ARP应答报文,源MAC地址和源IP地址为主机C的MAC地址和IP地址,目的MAC地址和目的IP地址为主机A的MAC地址和IP地址;
Step4:主机A对ARP应答报文进行处理
主机A收到ARP应答报文后,将主机C的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将数据报文进行帧封装,并将数据报文发送给主机C。
附:
ARP报文格式
3.已知IP包内容,分析报文内容及作用
47 00 00 44 11 e6 00 00 40 01 62 3c ac 1e 80 3a 3c d2 0e 11 83 07 04 1b c8 38 3e 00 08 00 4d 2a 00 01 00 31
需要了解IP协议的报文结构(P46 4-2图),给的报文信息是十六进制的,在写的时候要写成十进制的,(一个16进制数字是4位),去看下十六进制和十进制的转换,计算完成后根据其协议字段,分析出其数据内容。
例:在该题中,版本为4,首部为28……,自己算下,然后去查IP数据报中协议字段数字,对应起来就行,协议字段含义在压缩包的另一个文件有。
4.一个节点收到两个IP包的首部如下
(1)45 00 05 dc 18 56 20 00 40 01 bb 12 c0 a8 00 01 c0 a8 00 67
(2)45 00 00 15 18 56 00 b9 49 01 e0 20 c0 a8 00 01 c0 a8 00 67
分析并判断这两个IP包是不是同一个数据报的分片?如果是那将二者排序,并判断是否能重组完成。
看标识位,一致则在同一分片,最低位代表MF为1时表示后面还有分片,为0时代表是若干数据包片的最后一个包。中间位是DF标志位,代表不允许分片,DF为0时允许分片,自己算自己算。
相关文章:

网络协议分析期末复习(五)
目录 0.前言 1.PC和PPPOE服务器建立连接的流程以及包含LCP配置选项的PPP帧 -Discovery阶段 -Session阶段 -Terminate阶段 包含LCP配置选项的PPP帧如下 2.ARP的步骤以及过程中的具体ARP报文 Step1:查看路由表项以及本地的ARP缓存表 Step2:发送ARP…...

外贸找客户软件:Yellow Page Spider 8.7.1 Crack
黄页蜘蛛 |黄页提取器 从PAGINE GIALLE中提取数据,电子邮件,公司,协会,商业活动的电话! Yellow Page Spider 8.7.1对于那些在附近或任何意大利地点寻找商业活动、公司、协会、各种俱乐部的人来说,PagineGia…...

博客管理系统(前端页面设计)
文章目录一、预期效果二、博客列表页三、博客详情页四、博客登录页五、博客编辑页一、预期效果 博客登录页: 博客列表页: 博客详情页: 博客编辑页: 目录结构: 大家需要注意,我们下述代码的所有路径都…...
安装yolov5环境
当今世界上,深度学习技术在各个领域都有广泛的应用,因此掌握深度学习技术对于从事人工智能相关工作的人来说是非常重要的。而 YOLOv5 是一个非常流行的目标检测框架,本文将介绍如何在 Ubuntu 系统上安装 YOLOv5 环境。 1.安装 Anaconda Ana…...

IP 归属地查询 API 教你从0到1顺着网线找到键盘侠
写在前面 前一段时间,微博、头条、抖音、知乎等各大互联网平台相继推出了“个人主页、评论显示 IP 属地,用户不能自己开启或关闭”的功能,那么这些平台是如何获取到用户的 IP 地址呢? 本文将从 IP 归属地的技术原理、实际应用场…...

【K8S系列】深入解析Pod对象(二)
目录 序言 1.Volume 简单介绍 2 Projected Volume 介绍 2.1 Secret 2.1.1 yaml讲解 2.1.2 创建Pod 2.2 Downward API 2.2.1 yaml示例 2.2.2 Downward API 支持字段 3 投票 序言 任何一件事情,只要坚持六个月以上,你都可以看到质的飞跃。 在…...

从3千到3万,我的测试之路真的坎坷
其实测试行业未来发展之路是几乎所有关于软件测试工程师都会在意的话题,相信各位看官也很迷茫自己的发展路线。为了方便大家选择和比较,我也将我的经验和观点分享出来,以作参考。如果小伙伴们有更好的观点,欢迎分享和探讨…...
linux下使用system函数在程序中运行linux的shell命令
一、功能 linux下在程序中调用shell命令实现某个功能,比如拷贝命令cp 二、使用 添加头文件 #include <stdlib.h> 函数原型 int system(const char *command); 描述说明是system的调用过程: 使用fork创建一个子进程,子进程使用 execl 执…...

银行数字化转型导师坚鹏:银行业发展趋势及对人才的需求分析
数字化转型背景下银行业发展趋势及对人才的需求分析 ——洞察先机,重塑人才核心竞争力 课程背景: 数字化转型背景下,很多银行存在以下问题:不知道银行整体发展现状与发展趋势?不清楚金融科技对银行发展有什么影响&…...
NFS挂载
0、创建 mkdir /nfsdata mkfs.xfs /dev/vdb mount /dev/vdb /nfsdata 1、两边主机启动nfs服务 service nfs start 2、被挂载主机查看,文件系统是否可挂载 showmount -e 3、将被挂载主机,设置任何主机可挂载文件系统 vi /etc/exports /nfsdata (in…...

IDEA使用技巧
IntelliJ IDEA是一款流行的Java集成开发环境(IDE),它为开发者提供了许多有用的功能和工具来提高他们的工作效率和开发质量。直接使用IntelliJ IDEA就相当于节省了自己的时间,如果先使用其他编译器后来在使用IntelliJ IDEA会觉得非…...

自动化测试之一【接口测试总结】
本文主要分为两个部分:第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什么要做?第二部分:…...

科大奥瑞物理实验——傅里叶光学
实验名称:傅里叶光学 1. 实验目的: 加深对傅里叶光学中的一些基本概念和基本理论的理解,如空间频率空间频谱和空间滤波和卷积等。通过实验验证阿贝成像理论,理解透镜成像的物理过程,进而掌握光学信息处理实质。通过阿…...
mysql count(*)的性能如何?
文章目录 为什么会出现这种情况呢?如何优化count(*)性能?增加redis缓存加二级缓存多线程执行减少join的表改成ClickHousecount的各种用法性能对比为什么会出现这种情况呢? 在Mysql中,count(*)的作用是统计表中记录的总行数。 而count()的性能跟存储引擎有直接关系,并非所…...

gan实战(基础GAN、DCGAN)
一、基础Gan 1.1 参数 (1)输入:会被放缩到6464 (2)输出:6464 (3)数据集:https://pan.baidu.com/s/1RY1e9suUlk5FLYF5z7DfAw 提取码:8n89 1.2 实现 import t…...
使用C语言实现服务器/客户端的TCP通信
本文力求使用简单的描述说明一个服务器/客户端TCP通信的基本程序框架,文中给出了服务器端和客户端的实例源程序,本文的程序在ubuntu 20.04中编译运行成功,gcc版本号为:9.4.0 1. 前言 当两台主机间需要通信时,TCP和UDP是两种最常用的传输层协议,TCP是一种面向连接的传输协…...
AI模型训练推理一定要知道的事情
AI训练的算力要求 算力 模型训练需要大量计算资源,包括CPU( Central Processing Unit)、GPU(Graphical Processing Unit)、TPU(Tensor Processing Unit)等,其中GPU是最为常见的硬件加速器。另外还可以通过算法优化提高模型训练效率。例如分布式训练技术…...

SPSS27破解安装后,出现应用程序无法正常启动(0xc000007b)
破解完SPSS 27软件后,点击图标出现下图错误 可以尝试以下方法: 1. 在安装目录下找到VC开头的文件夹 2. 点击此软件进行修复 若修复完成,重新启动SPSS软件即可。 3. 若提示错误,显示如下界面,进行下面的方法j 4. 下…...

央企程序员写了重大bug,会造成用户个人信息泄露,领导已经知道了,需要赶紧跑路吗?...
开发过程中出现bug是很正常的事情,小bug无关紧要,可如果是重大bug该怎么办?一位央企程序员就陷入了这样的困境:因为自己没有考虑周全,不小心写了个重大bug,会造成用户个人信息泄露(用爬虫可以攻…...

day14—选择题
文章目录1.定义学生、教师和课程的关系模式 S (S#,Sn,Sd,Dc,SA )(其属性分别为学号、姓名、所在系、所在系的系主任、年龄); C ( C#,Cn,P# )(其属性分别为课程号、课程名、先修课)&a…...

微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...

Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...

JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...

GitFlow 工作模式(详解)
今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存,无论是github还是gittee,都是一种基于git去保存代码的形式,这样保存代码…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...

DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...

【网络安全】开源系统getshell漏洞挖掘
审计过程: 在入口文件admin/index.php中: 用户可以通过m,c,a等参数控制加载的文件和方法,在app/system/entrance.php中存在重点代码: 当M_TYPE system并且M_MODULE include时,会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

如何应对敏捷转型中的团队阻力
应对敏捷转型中的团队阻力需要明确沟通敏捷转型目的、提升团队参与感、提供充分的培训与支持、逐步推进敏捷实践、建立清晰的奖励和反馈机制。其中,明确沟通敏捷转型目的尤为关键,团队成员只有清晰理解转型背后的原因和利益,才能降低对变化的…...