计算机网络管理 实验4(一) SNMP报文分析之验证SNMP协议的工作过程以及分析SNMP数据单元的格式

news2024/11/17 13:20:50

⬜⬜⬜ 🐰🟧🟨🟩🟦🟪(*^▽^*)欢迎光临 🟧🟨🟩🟦🟪🐰⬜⬜⬜

✏️write in front✏️
📝个人主页:陈丹宇jmu
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​
🙉联系作者🙈by QQ:813942269🐧
🌈致亲爱的读者:很高兴你能看到我的文章,希望我的文章可以帮助到你,祝万事顺意🏳️‍🌈
✉️少年不惧岁月长,彼方尚有荣光在 🏆

一、 实验目的
        捕获SNMP报文,通过报文分析进一步理解SNMP的报文结构、MIB-2树的结构、理解管理信息结构SMI及其规定的ASN.1。
二、实验内容与设计思想
        实验内容:编写代码,测试
        1、自行挑选两个网管对象,分别使用get,get-next取其值。
        2、使用抓包软件抓取数据包。
        3、分析并验证SNMP协议数据:
        1)SNMP协议的工作过程;
        2)SNMP协议数据单元的格式;
        3)MIB-2树的结构;
        4)管理信息结构SMI及其规定的ASN.1。
三、实验要求
        1、管理站与代理为不同机器。共有4个数据包:2个对象(分别用get、get-next)*2个包(request,response)=4个。
        2、要分析其SNMP结构,指出语法定义、编码依据。对于后面的数据包,只要对新出现的结构类型进行分析即可,不需要重复分析。
        3、独立完成分析工作。
        4、撰写实验报告,给出实验小结,问题分析。实验课后5天提交。


目录

🎯验证SNMP协议的工作过程

📖分析SNMP数据单元的格式


🎯验证SNMP协议的工作过程

使用WireShark抓包工具抓取SNMP协议的报文。结果如下图所示:

管理代码:

snmputil get 192.168.43.143 72.21.10.173 public .1.3.6.1.2.1.1.1.0
snmputil walk 172.21.10.210 public .1.3.6.1.2.1.4.20.1.1

可以明显地看出,SNMP 是基于请求/响应模型进行工作的,客户端发送一个请求,服务器对请求的内容进行回应。

查看SNMP协议传输层报文分析SNMP协议的工作过程:

如下所示,管理站向代理系统发出的get—request报文在传输层是通过UDP发出的,发送到代理系统的161目的端口。

 而代理系统在接收到管理站发出的请求报文后,会对该报文进行相应,代理系统向管理站发送get—respone响应报文,该报文通过代理系统的161端口发出。

 通过进一步的学习,我知道,UDP端口号161用于SNMP代理向SNMP管理程序发送信息,也称为SNMP读端口,SNMP管理程序通过该端口获取被管理设备的状态信息;UDP端口号162用于SNMP管理程序向SNMP代理发送信息,也称为SNMP写端口,SNMP管理程序通过该端口向被管理设备发送控制和配置信息。

需要注意的是,SNMP协议使用的是UDP协议,不同于TCP协议,因此设计的端口号不同,其目的是使SNMP通信更加高效,减少网络传输的负担。

使用netstat -an查看代理站TCP/UDP连接表

如下图所示,系统的161端口处在活动状态。

 对于表项的理解:

SNMP协议是基于UDP协议传输的,而UDP协议是无连接的,只是监听,并没有因为数据包的发送就成登记一条连接。

以下是SNMP协议工作的基本过程

        管理器系统向被管理设备发送请求,以获取所需的信息,如系统配置、设备状态或运行指标等。

        被管理设备或代理收到请求后,会根据请求中的OID值来查找相应的MIB(Management Information Base)对象,这些对象保存了设备性能和状态数据。

        如果找到所需的MIB对象,设备或代理将该对象的值作为响应返回给管理器。

        如果未找到所需的MIB对象,则设备或代理将错误信息或其他相关的信息返回给管理器。

        管理器系统接收到响应信息后,可以对其进行处理,例如显示在UI界面上或将其保存到文件中等。

        总体而言,SNMP协议的工作过程可以概括为“请求-响应”模式。SNMP管理器向SNMP代理设备发送请求,代理设备将响应返回给管理器,管理器再进行相应的处理。这种通信方式使得管理员可以轻松地管理网络设备,并能够快速响应设备的状态和性能问题。

        总结一下,SNMP协议的工作过程包括管理器向代理发送请求,代理响应请求并返回相应的值,管理器接收响应并进行相应的处理。

📖分析SNMP数据单元的格式

注明:下面所示的是SNMPv1版本的报文格式:

 报文中每个字段的含义如下

  • 版本(version):版本字段,写入版本字段的是版本号减1。例如,SNMP(即 SNMPv1)应写入 0。
  • 共同体(community):字符串形式,作为网络管理站 NMS 和 SNMP 代理之间的明文口令,默认为 public。
  • PDU 类型:SNMP 协议的操作类型。
    1. 值为 0,表示 get-request 操作;
    2. 值为 1,表示 get-next-request 操作;
    3. 值为 2,表示 get-response 操作;
    4. 值为 3,表示 set-request 操作;
    5. 值为 7,表示 informRequest 操作。
  • 请求标识(request-id):管理站 NMS 设置的一个整数值。SNMP 代理在发送 get-response 报文时也要返回此请求标识符。
  • 差错状态(error status):整数,由 SNMP 代理进行标注,指明有错误发生。可用的值及含义如下表所示。

 

错误状态对应信息

  • 差错索引(error-index):当出现 noSuchName、badValue 或 readOnly 的错误时,由代理进程在回答时设置的一个整数。该数值指明引起错误的变量在变量列表中的偏移位置。
  • 名称(Object name):MIB 管理信息库中的OID。
  • 值(Value):OID对应的值。

如上图可以看出GetRequest PDU, GetNextRequest PDU,SetRequest PDU,GetResponse PDU的格式是相同的。

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

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

相关文章

FPGA基础知识-门级建模

目录 学习目标 学习内容 1.门的类型 2.门延迟 学习时间 学习小结 学习目标 学习Verilog 提供的门级原语 理解门的实例引用、门的符号以及andor,bufnot类型的门的真值表 学习如何根据电路的逻辑图来生成verilog描述 讲述门级设计中的上升、下降和关断延迟 …

【论文解读系列】Blip-2:引导语言图像预训练具有冻结图像编码器和大型语言模型

Blip-2 BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Models BLIP-2:引导语言图像预训练具有冻结图像编码器和大型语言模型 (0) 总结&实测 总结:blip-2 最大的贡献在于,提出了…

跨境电商社交媒体:选择合适的平台

正如您在使用社交媒体的九种方法中了解到的那样,跨境电商优先考虑社交媒体营销可能会更有利可图。有数十个平台可供选择,每个平台都迎合了具有不同兴趣、特征和位置的独特受众。 那么您应该关注哪个社交媒体平台以及如何以最大效率工作? 目…

【Vue全家桶高仿小米商城】——(三)VueCli4.0安装和使用

文章目录 第三章:VueCli4.0安装和使用一、VueCli4.0安装:二、创建Vue项目方式一 使用脚本搭建方式二 使用UI界面搭建 三、安装依赖方式一 Vue脚手架图形界面安装方式二、命令行安装 四、Vue DevTools安装使用两种安装方式: 第三章&#xff1a…

Linux权限解析

一、Linux用户分类 Linux下有两种用户:超级用户(root)、普通用户 超级用户:可以再linux系统下做任何事情,不受限制 普通用户:在linux下做有限的事情。 超级用户的命令提示符是“#”,普通用户的…

6.6面向对象继承

2. 面向对象特征二:继承(Inheritance) 2.1 继承的概述 说到继承我们会想到什么 在Java面向对象程序设计中的继承,多个类中存在相同属性和行为时,将这些相同的内容抽取到单独一个类(父类)中,然后所有的类继…

【备战秋招】每日一题:4月15日美团春招第二题:题面+题目思路 + C++/python/js/Go/java带注释

为了更好的阅读体检,为了更好的阅读体检,,可以查看我的算法学习博客第二题-分糖果 在线评测链接:P1236 题目内容 某天,塔子哥去商店买了两种不同口味的糖果,分别买了 a 个和 b 个。当他回到家时,他发现他…

IDE/以glog为例实践CMake-Gui工具使用

文章目录 概述构建glog编译glog.sln解决方案glog的配置项BUILD_SHARED_LIBSBUILD_TESTINGCMAKE_CONFIGURATION_TYPESCMAKE_INSTALL_PREFIXWITH_GTESTGTest_DIRWITH_GFLAGSgflag_DIRPRINT_UNSYMBOLIZED_STACK_TRACESWITH_SYMBOLIZEWITH_FUZZINGWITH_THREADSWITH_TLSWITH_GMOCKWI…

3分钟了解如何做好项目管理和协作

目录 介绍 什么是项目管理 项目管理三要素 时间 成本 质量 项目启动阶段项目启动负责人要了解四个问题 项目规划阶段 任务分解->任务优先级安排->计划呈现->风险控制 快速呈现项目工作计划 项目启动:信息同步任务分工高效 项目跟踪&#xff1a…

实战:用docker-compose容器化springboot项目

文章目录 前言技术积累docker-compose定义docker-compose文件参数docker-compose命令 实战演示1、创建挂载路径2、编写docker-compose.yml3、启动并管理容器 写在最后 前言 前面我们学习和实战了用dockerfile构建镜像,通过镜像可以任意在docker环境容器化部署项目。…

C++静态联编和动态联编

目录 2.1静态联编 2.2动态联编 2.3虚函数面试题 2.3.1构造函数中使用memset函数 2.3.2this指针与虚函数的调用 2.3.3构造析构函数中调用虚函数 2.3.4动态和静态联编与访问属性和默认值 2.3.5动态创建对象时的析构函数 联编是指计算机程序彼此关联的过程,是把…

Fiddler汉化成功

我安装的fiddler 操作系统是:Win10 64Bit 操作系统的版本号是:v5.0.20194.41348 for .NET 4.6.1 fiddler下载地址: 我用夸克网盘分享了「02-Web调试工具-FiddlerSetup.exe」,点击链接即可保存。 链接:https://pan.quar…

什么是项目里程碑?如何为项目成功设置?

高速公路上每隔一公里就有一个标志牌,这表明你需要进一步行驶才能到达目的地的距离。虽然没有这些标志你也可以到达目的地,但它们的存在使你放心,让你确信走在正确的道路上。 项目里程碑在项目管理中也有同样的作用。当你的项目实现目的时&a…

Linux内核学习----整体概览

目录 1、概述 2、核心抽象及设计选型 2.1. 对进程和内核的抽象 2.2. 对进程地址空间的抽象 2.3. 支持可重入可抢占的内核 2.4. 放松管控与努力回收 2.5. 单块结构内核动态加载模块 2.6. 为系统中的一切活动打拍子 2.7. 一切皆文件的理念 3、Linux整体架构模块说明 3.…

对C++中const的说明

对C中const的说明 在C中,const是一个关键字,用于指定对象或变量是只读的,即不可修改。它可以应用于不同的上下文中,包括: 对象和变量声明:通过在变量或对象的声明前加上const关键字,可以将其标…

ACL2022 Document-Level Event Argument Extraction via Optimal Transport

Document-Level Event Argument Extraction via Optimal Transport 论文:https://aclanthology.org/2022.findings-acl.130/ 代码:- 期刊/会议:ACL 2022 摘要 事件论元抽取(EAE)是事件抽取的子任务之一&#xff0c…

智驾传感器新风向!拐点将至

“大家都比较关注激光雷达,尤其是在今年整个行业聚焦降本的大背景下,这个赛道还行不行?”6月8日,2023年度(第十四届)高工智能汽车开发者大会上,高工智能汽车研究院首发《2023-2025年中国汽车市场…

【备战秋招】每日一题:4月29日美团春招第三题:题面+题目思路 + C++/python/js/Go/java带注释

为了更好的阅读体检,为了更好的阅读体检,,可以查看我的算法学习博客第三题-酒王 在线评测链接:P1268 题目内容 塔子哥和他的朋友们共 n 人是一群热爱生活的年轻人,他们经常在一起吃饭,聊天,玩游戏。有一…

预设Preset简单使用

作用 是一个资源文件。可以保存组件、资源、项目设置的属性,将属性应用到组件、资源、项目设置上。 例如,创建一个Transform预设,可记录Transform的属性,其他Transform应用预设,会使用预设中的数据。 文档 预设 预设…

【Vue全家桶高仿小米商城】——(二)Git安装与配置

文章目录 第二章:Git安装和配置一、Windows/Mac/Linux安装二、环境变量配置、开发工具配置Windows - 环境变量Mac/Linux - 环境变量VSCode配置Git使用 VScode git,提交到仓库 三、存储密码 - SSH添加秘钥Git配置命令遇到的问题 四、Git常用命令 第二章&…