当前位置: 首页 > news >正文

学习笔记——网络管理与运维——SNMP(SNMP版本)

二、SNMP版本

1、SNMP版本

SNMP共有三个版本:SNMPv1、SNMPv2c和SNMPv3。

(1)SNMPv1

1990年5月,RFC1157定义了SNMP的第一个版本SNMPv1。RFC1157提供了一种监口控和管理计算机网络的系统方法。SNMPv1基于团体名认证,安全性较差,且返回报文的错误码也较少。

适用于小型网络,组网简单对网络安全性要求不高或者网络环境本身比较安全且比较稳定的网络,比如校园网,小型企业网。

SNMPv1定义了5种协议操作:

Get-Request:NMS从被管理设备的代理进程的MIB中提取一个或多个参数值。

Get-Next-Request:NMS从代理进程的MIB中按照字典式排序提取下一个参数值。

Set-Request:NMS设置代理进程MIB中的一个或多个参数值。

Response:代理进程返回一个或多个参数值。它是前三种操作的响应操作。

Trap:代理进程主动向NMS发送报文,告知设备上发生的紧急或重要事件。

(2)SNMPv2c

1996年,IETF颁布了RFC1901,定义了SNMP的第二个版本SNMPv2c。SNMPv2c中口引入了GetBulk和Inform操作,支持更多的标准错误码信息,支持更多的数据类型(Counter64、Counter32)。

适用于大中型网络对网络安全性要求不高或者网络环境本身比较安全(比如VPN网络)但业务比较繁忙有可能发生流量拥塞的网络

通过配置Inform告警可以确保被管理设备发送的告警能够被网管收到。

SNMPv2c新增了2种协议操作:

GetBulk:相当于连续执行多次GetNext操作。在NMS上可以设置被管理设备在一次GetBulk报文交互时,执行GetNext操作的次数。

Inform:被管理设备向NMS主动发送告警。与Trap告警不同的是,被管理设备发送Inform告警后,需要NMS进行接收确认。如果被管理设备没有收到确认信息则会将告警暂时保存在Inform缓存中,并且会重复发送该告警,直到NMS确认收到了该告警或者发送次数已经达到了最大重传次数。

(3)SNMPv3

鉴于SNMPv2c在安全性方面没有得到改善,IETF又颁布了SNMPv3的版本,提供了基于USM(User-Based Security Model,用户安全模块)的认证加密和VACM(View-based Access Control Model,基于视图的访问控制模型)功能。

适用于各大种规模的网络,尤其是对网络的安全性要求比较高确保合法的管理员才能对网络设备进行管理的网络。比如,网管和被管理设备间的通信数据需要在公网上进行传输

SNMPv3与SNMPv1和SNMPv2c的工作机制基本一致,但添加了报头数据和安全参数,报文具有身份验证和加密处理的功能。

身份验证:是指代理进程(NMS)接收到信息时首先必须确认信息是否来自有权限的NMS(代理进程)并且信息在传输过程中未被改变。

加密处理:SNMPv3报文中添加了报头数据和安全参数字段。比如当管理进程发出SNMPv3版本的Get-Request报文时可以携带用户名、密钥、加密参数等安全参数,代理进程回复Response报文时也采用加密的Response报文。

这种安全加密机制特别适用于管理进程和代理进程之间需要经过公网传输数据的场景。

(4)三个版本区别

特性

SNMPv1

SNMPv2c

SNMPv3

访问控制

基于团体各和MIB View进行访问控制

基于团体名和MIB View进行访问控制

基于团体名和MIB View

进行访问控制

认证加密

基于团体名的认证

基于团体名的认证

支持认证和加密方式:

认证:MD5/SHA

加密:

DES56/AES128/AES192/AES256/3DES

错误码

支持6个错误码

支持16个错误码

支持16个错误码

Trap告警

支持

支持

支持

Inform告警

不支持

支持

支持

GetBulk

不支持

支持

支持

适用场景

适用于小型网络,组网简单,对网络安全性要求不高或网络环境本身比较安全且比较稳定的网络。

比如校园网,小型企业网。

适用于大中型网络,对网络安全性要求不高或者网络环境本身比较安全(如VPN网络)但业务比较繁忙,有可能发生流量拥塞的网络。通过配置Inform告警可以确保被管理设备发送的告警能够被网管收到。

适用于各种规模的网络,尤其是对网络的安全性要求较高,确保合法的管理员才能对网络设备进行管理的网络。如网管和被管理设备间的通信数据需要在公网上进行传输。

实现方便,安全性弱

有一定的安全性。现在应用最为广泛。

定义了一种管理框架,为用户提供了安全的访问机制


整个华为数通学习笔记系列中,本人是以网络视频与网络文章的方式自学的,并按自己理解的方式总结了学习笔记,某些笔记段落中可能有部分文字或图片与网络中有雷同,并非抄袭。完处于学习态度,觉得这段文字更通俗易懂,融入了自己的学习笔记中。如有相关文字涉及到某个人的版权利益,可以直接联系我,我会把相关文字删除。【VX:czlingyun    暗号:CSDN】

相关文章:

  • uniapp如何实现跳转
  • GenICam标准(六)
  • MySQL的三种重要的日志
  • Vue3 和 Vue2 对比分析及示例代码解析(初级)
  • Python **运算符(python**kwargs:参数解包)(kwargs:keyword arguments)
  • 10:Hello, World!的大小
  • 小程序无法调用服务端问题排查
  • uniapp地图自定义文字和图标
  • c++编程(17)——deque的模拟实现(1)迭代器篇
  • vuex是什么?如何使用?使用他的功能场景?
  • [大模型]XVERSE-MoE-A4.2B Transformers 部署调用
  • 大数据同步方案怎么选,才能提高企业的业务效率?
  • 1832javaERP管理系统之车间计划管理Myeclipse开发mysql数据库servlet结构java编程计算机网页项目
  • 【菜狗学前端】uniapp(vue3|微信小程序)实现外卖点餐的左右联动功能
  • Linux C编译器从零开发一
  • 收藏网友的 源程序下载网
  • ➹使用webpack配置多页面应用(MPA)
  • CNN 在图像分割中的简史:从 R-CNN 到 Mask R-CNN
  • Create React App 使用
  • DOM的那些事
  • HTTP中GET与POST的区别 99%的错误认识
  • JAVA 学习IO流
  • Js基础知识(四) - js运行原理与机制
  • leetcode-27. Remove Element
  • npx命令介绍
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • spring boot下thymeleaf全局静态变量配置
  • tensorflow学习笔记3——MNIST应用篇
  • Twitter赢在开放,三年创造奇迹
  • 笨办法学C 练习34:动态数组
  • 动态规划入门(以爬楼梯为例)
  • 异常机制详解
  • C# - 为值类型重定义相等性
  • Java数据解析之JSON
  • ​第20课 在Android Native开发中加入新的C++类
  • ​人工智能书单(数学基础篇)
  • #Lua:Lua调用C++生成的DLL库
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (0)Nginx 功能特性
  • (1)(1.13) SiK无线电高级配置(五)
  • (39)STM32——FLASH闪存
  • (Java)【深基9.例1】选举学生会
  • (ZT)出版业改革:该死的死,该生的生
  • (附源码)php投票系统 毕业设计 121500
  • (七)Knockout 创建自定义绑定
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (学习日记)2024.02.29:UCOSIII第二节
  • (转) ns2/nam与nam实现相关的文件
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • (转)shell调试方法
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • ... 是什么 ?... 有什么用处?
  • .Net 4.0并行库实用性演练
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • .NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布