首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >snmp协议详解-2_icmp报文封装在ip包的数据部分

snmp协议详解-2_icmp报文封装在ip包的数据部分

作者头像
全栈程序员站长
发布于 2022-11-03 09:10:41
发布于 2022-11-03 09:10:41
7700
举报

转自 https://blog.csdn.net/shmily_cml0603/article/details/12968157

一、什么是SNMP?

SNMP是简单的网络管理协议,它不是一个软件,而用于网络管理的一套规则。利用SNMP,一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。

但话又说回来,为什么要使用SNMP协议?

因为网络设备可能来自不同的厂商,如果每个厂商提供一套独立的管理接口,将使网络管理变得越来越复杂,若想对网络中来自不同厂商的设备监控,用基于SNMP开发的软件进行管理最方便的,因为大部分的设备都支持SNMP协议。

那么SNMP有哪些技术有点?

(1)基于TCP/IP互联网的标准协议,传输层协议一般用UDP

(2)自动化网络管理。网络管理员可以利用SNMP平台在网络上的节点检索信息、修改信息、发现故障、完成故障诊断、进行容量规划和生成报告

(3)屏蔽不同设备的物理差异,实现对不同厂商产品的自动化管理。SNMP只提供最基本得功能集,使得管理任务与被管理设备的物理特征和实际网络类型相对独立,从而实现对不同厂商设备的管理

(4)简单的请求-应答方式和主动通告方式相结合,并有超时和重传机制

(5)报文种类少,报文格式简单,方便解析,易于实现

(6)SNMPv3版本提供了认证和加密安全机制,以及基于用户和视图的访问控制功能,增强了安全性

二、SNMP的网络架构

SNMP网络架构由三部分组成:NMS(网络管理站)、Agent(代理)、MIB(管理信息库)

1、NMS(网络管理站)

NMS是网络中的管理者,是一个利用SNMP协议对网络设备进行管理和监视的系统。可以是一台专门用来进行网络管理的服务器,也可以指某个设备中之中管理功能的一个应用程序。

NMS可以向Agent发出请求,查询或修改一个或多个具体的参数值。同时,NMS可以接收Agent主动发送的Trap信息,以获知被管理设备当前的状态

2、Agent

Agent是网络设备中的一个应用模块,用于维护被管理设备的信息数据,并响应NMS的请求,把管理数据汇报给发送请求的NMS。

Aent接收到NMS的请求信息后,完成查询或修改操作,并把操作结果发送给NMS,完成响应。同时,当设备发生故障或者其他事件的时候,Agent会主动发送Trap信息给NMS,通知设备当前的状态变化。

3、MIB

任何一个被管理的资源都表示成一个对象,称为被管理的对象。MIB就是被管理对象的集合。它定义了被管理对象的一系列的属性:对象的名称、对象的访问权限和对象的数据

类型等。每个Agent都有自己的MIB。MIB也可以看做是NMS和Agent之间的一个接口,通过这个接口,NMS可以对Agent中的每一个被管理对象进行读/写操作,从而达到管理和监控设备的目的。

NMS、Agent和MIB之间的关系如图所示:

MIB的结构:

MIB是以树状结构进行存储的,树的节点表示被管理对象,它可以用从根开始的一条路径唯一地识别,这条路径就称为OID。

如图所示,管理对象system可以用一串数字{1.3.6.1.2.1.1}唯一标识,这串数字就是system的OID。

三、SNMP的操作

后续的文章我们会通过抓包工具来抓取报文,来具体的分析SNMP报文的格式,以及SNMPv1、v2c、v3版本的相同与区别,以及v3所用的基于用户和基于视图的安全措施,认证和加密的过程!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/181200.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
snmp协议的trap操作采用基于_maven批量导入jar包
SNMP是英文”Simple Network Management Protocol”的缩写,中文意思是”简单网络管理协议”。SNMP是一种简单网络管理协议,它属于TCP/IP五层协议中的应用层协议,用于网络管理的协议。SNMP主要用于网络设备的管理。由于SNMP协议简单可靠 ,受到了众多厂商的欢迎,成为了目前最为广泛的网管协议。
全栈程序员站长
2022/09/23
1.7K0
snmp协议的trap操作采用基于_maven批量导入jar包
H3C路由交换 SNMT配置
SNMP(Simple Network Managemant Protocol,简单网络管理协议)提供了一种从网络设备中收集网络管理信息的方法,也为设备向网络管理工作站报告问题和错误提供了一种方法。SNMP可以屏蔽不同设备的物理差异,实现不同厂商产品的自动化管理。
张旭博客
2022/12/27
5280
简单网络管理协议SNMP(史上最全)
SNMPv1 是 SNMP 协议的最初版本,提供最小限度的网络管理功能。SNMPv1 的 SMI 和 MIB 都比较简单,且存在较多安全缺陷。SNMPv1 采用团体名认证。团体名的作用类似于密码,用来限制NMS对Agent 的访问。如果 SNMP 报文携带的团体名没有得到 NMS/Agent 的认可,该报文将被丢弃。SNMPV1 是一种简单的请求/响应协议。网络管理系统发出一个请求,管理器则返回一个响应。这一行为的实现是通过使用四种协议操作中的其中任一种完成的。这四种操作分别是 GET、GETNEXT、SET 和 TRAP。NMS 通过 GET 操作,从 SNMP 代理处得到一个或 更多的对象(实例)值。如果代理处不能提供请求列表中所有的对象(实例)值,它也就不提供任何值。 NMS 使用 GETNEXT 操作请求代理从请求列表或对象列表中取出下一 个对象实例值。NMS 通过 SET 操作向 SNMP 代理发送命令,要求对对象值重新配置。SNMP 代理通过 TRAP 操作不定时的通知 NMS 所发生的特定事件 SNMP 是一种应用程序协议。
全栈程序员站长
2022/11/02
4.2K0
SNMP学习笔记之SNMP报文协议详解
简单网络管理协议(SNMP)是TCP/IP协议簇的一个应用层协议。在1988年被制定,并被Internet体系结构委员会(IAB)采纳作为一个短期的网络管理解决方案;由于SNMP的简单性,在Internet时代得到了蓬勃的发展,1992年发布了SNMPv2版本,以增强SNMPv1的安全性和功能。现在,已经有了SNMPv3版本。 一套完整的SNMP系统主要包括管理信息库(MIB)、管理信息结构(SMI)及SNMP报文协议。
Jetpropelledsnake21
2018/11/22
6.6K0
SNMP定义及SNMPv3特性,来看看考官想听的。
通过网络管理软件可以集中式对多台设备进行统一管理,并且可以直观的看到网络设备的运行情况。而且可以通过网管软件对设备进行相应的配置, SNMP 系统包括网络管理系统 NMS(Network Management System)、代理进程 Agent、被管对象 Management object 和管理信息库 MIB(Management Information Base)四部分组成。
Ponnie
2021/02/24
2.8K0
网络协议篇之SNMP协议(一)——SNMP报文协议
(前言:最近工作中遇到大量的网络协议开发,现就其中一些网络协议的基础知识进行整理,文中借鉴了一些大神的整理,后面会贴上链接,如侵删)
全栈程序员站长
2022/11/03
8.7K0
网络协议篇之SNMP协议(一)——SNMP报文协议
snmp trap日志「建议收藏」
SNMP是网络管理领域中事实上的工业标准,并被广泛支持和应用,大多数网络管理系统和平台都是基于SNMP的。SNMP采用UDP协议在管理端和agent之间传输信息, SNMP采用UDP 161端口接收和发送请求,162端口接收trap。
全栈程序员站长
2022/09/24
5.3K0
snmp trap日志「建议收藏」
SNMP学习笔记之SNMP报文以及不同版本(SNMPv1、v2c、v3)的区别
本篇文章将重点分析SNMP报文,并对不同版本(SNMPv1、v2c、v3)进行区别!
Jetpropelledsnake21
2018/11/22
7.9K0
[NetWork] SNMP统一网络管理
一种网络管理协议 提供从网络设备中收集信息的方法,同样也为向网络管理方报告问题和错误提供方法。 提供了一种多供应商、可协同操作的网络管理工具
BreezeCloud
2022/12/04
6860
[NetWork] SNMP统一网络管理
了解什么是 SNMP
SNMP是英文 Simple Network Management Protocol 的缩写,中文意思是”简单网络管理协议”。SNMP是一种简单网络管理协议,它属于TCP/IP五层协议中的应用层协议,用于网络管理的协议。SNMP主要用于网络设备的管理。由于SNMP协议简单可靠 ,受到了众多厂商的欢迎,成为了目前最为广泛的网管协议。
wtz0216
2021/03/14
3.3K0
SNMP学习笔记之SNMP简单概述
SNMP是英文"Simple Network Management Protocol"的缩写,中文意思是"简单网络管理协议"。SNMP是一种简单网络管理协议,它属于TCP/IP五层协议中的应用层协议,用于网络管理的协议。SNMP主要用于网络设备的管理。由于SNMP协议简单可靠 ,受到了众多厂商的欢迎,成为了目前最为广泛的网管协议。
Jetpropelledsnake21
2018/11/22
6K0
浅谈H3C iMC结合SNMPv3协议管
网络管理软件收到越来越多客户的欢迎,IT厂商也积极推出自己的网络管理软件,至于使用效果和体验,大家自己感受,IT圈里混的,你们都懂的。结合个人最近实施项目,部署H3C(据说现在叫“新华三”)研发的iMC运维管理平台,涉及到不同厂商的设备,简单与大家分享一下。
py3study
2020/01/09
2.3K0
SNMP协议能够实现哪些功能?
在当今这个高度数字化、网络化的时代,互联网已成为社会运行不可或缺的基石,深深渗透并支撑着各行各业的繁荣发展。从企业日常运营的顺畅进行,到通信行业信息传输的高效无误,再到数据中心处理海量数据的庞大需求,无一不依赖于一个稳固且高效的网络环境。
ICT系统集成阿祥
2024/12/03
3480
SNMP协议能够实现哪些功能?
SNMP学习笔记之SNMP 原理与实战详解
原文地址:http://freeloda.blog.51cto.com/2033581/1306743
Jetpropelledsnake21
2018/11/22
12.7K0
SNMP 协议[通俗易懂]
简单网络管理协议(SNMP:Simple Network Management Protocol)是由互联网工程任务组(IETF:Internet Engineering Task Force )定义的一套网络管理协议。该协议基于简单网关监视协议(SGMP:Simple Gateway Monitor Protocol)。利用SNMP,一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。 虽然SNMP开始是面向基于IP的网络管理,但作为一个工业标准也被成功用于电话网络管理。
全栈程序员站长
2022/11/02
4.8K0
网络管理与运维知识点总结
知孤云出岫
2025/07/07
1210
网络管理与运维知识点总结
SNMPv3
SNMP是Simple Network Manger Protocol(简单网络管理协议)的缩写,利用SNMP协议,网络管理员可以对网络上的节点进行信息查询、网络配置、故障定位、容量规划,网络监控和管理是SNMP的基本功能。
py3study
2020/01/13
1.3K0
Snmp学习笔记
相关链接: Snmp学习笔记 使用snmp4j实现Snmp功能(一) 使用snmp4j实现Snmp功能(二) 使用snmp4j实现Snmp功能(三)
全栈程序员站长
2022/07/12
4430
CentOS7下安装SNMP服务
SNMP 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。 SNMP 使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。通过 SNMP 接收随机消息(及事件报告)网络管理系统获知网络出现问题
yuanfan2012
2020/02/19
6.7K0
CentOS7下安装SNMP服务
SNMP学习笔记之SNMP介绍,OID及MIB库
1.1.    SNMP概览  SNMP的基本知识介绍 简单网络管理协议(SNMP-Simple Network Management Protocol)是一个与网络设备交互的简单方法。该规范是由IETF在1990年五月发布的RFC 1157中定义的。SNMP通常被认为相当难懂,并且过于复杂,其可用的API似乎在本来非常简单的东西外面封装了大量的东西。现在关于SNMP的书籍又往往只是把它更加复杂化了,而没有解释清楚。 SNMP对于任何程序设计人员来说是特别易于理解的。总体的简化能够很好地把这个系统简化。一个网络设备以守护进程的方式运行SNMP代理,该守护进程能够响应来自网络的各种请求信息。该SNMP代理提供大量的对象标识符(OID-Object Identifiers)。一个OID是一个唯一的键值对。该代理存放这些值并让它们可用。一个SNMP管理器(客户)可以向代理查询键值对中的特定信息。从程序员的角度看,这和导入大量的全局变量没有多少区别。SNMP的OID是可读或可写的。尽管向一个SNMP设备写入信息的情况非常少,但它是各种管理应用程序用来控制设备的方法(例如针对交换机的可管理GUI)。SNMP中有一个基本的认证框架,能够让管理员发送公共名来对OID读取或写入的认证。绝大多数的设备使用不安全的公共名 "public" 。 SNMP协议通过UDP端口161和162进行通信的。 注意,我还没有提到MIB!MIB的重要性被大大地夸大了。刚开始时,MIB显得非常复杂,但是它们其实非常简单。OID是数字的和全局的键值对。一个OID看起来和一个IPv6的地址很象,并且不同的厂商有不同的前缀等信息。OID都非常长,使得人们难以记住,或者对他非常感冒。因此,人们就设计了一种将数字OID翻译为人们可读的格式。这种翻译映射被保存在一个被称为 “管理信息基础"(Management Infomation Base) 或MIB的、可传递的无格式文本文件里。使用SNMP或者向SNMP设备查询,你不需要使用MIB,但是,如果没有MIB,你就得猜测你正在查看的数据是什么。某些情况下,不使用MIB也非常简单,例如查看主机名、磁盘使用率数字,或者端口状态信息。其他情况下,就非常困难了,这个时候使用MIB就非常有帮助。对于准备编写的应用程序来说,为了让用户避免妥当安装MIB带来的麻烦,而严格使用数字OID很常见。安装一个MIB的动作,只是将他放置到你的SNMP客户端应用软件能够搜索到并进行上述翻译映射工作的某个位置而已。 SNMP可以按照两种方式来使用:轮询和陷阱。轮询就是说你编写一个应用程序能够设置一个发送给一个SNMP代理查看某些值的SNMP GET请求。这种方法非常有用,因为如果该设备响应了请求,你就得到了你需要的信息,如果该设备没有响应请求,你就能够知道存在某些问题。轮询是网络监控的一种主动形式。另一方面,SNMP陷阱能够被用来进行被动形式的网络监控。SNMP陷阱是通过配置SNMP设备的代理,让他在某些动作发生时联系另一个SNMP代理来实现的。 备,可以配置为在某些事件发生时发送SNMP陷阱。例如,你可以配置Cisco的IOS在某个独立事件(例如链路断开)发生时,或者在任何定义的陷阱事件发生时,发送SNMP陷阱。(IOS:snmp服务器开启了链路断开的snmp陷阱)。当陷阱事件发生时,设备中的snmp代理会发送该陷阱到一个预先配置好的通常成为陷阱主机的目标上。陷阱主机会运行有自己的SNMP代理,该代理能够接受并处理传入的陷阱。这些陷阱的处理由陷阱处理器来完成。陷阱处理器可以用任何语言编写,并且可以通过STDIN(标准输入)传入的来自发送陷阱的信息。该处理器之后可以根据陷阱进行任何想作的事情,例如发送邮件或者你想要的任何事情。 SNMP被广泛应用在NMS网络管理系统中(Network Management System)。知名的NMS包括BMC的Patrol、CA的Unicenter、Sun Mangegement控制台、IBM的Tivoli Netview、以及全球著名的HP Openview。NMS的目标是提供一个监控和管理所有开启SNMP功能的设备的单一入口。通过配置你的设备代理来接受写访问,你可以从一个应用程序中处理你的网络环境。如果你的整个环境围拢NMS解决方案架构你的环境,你就能无限制地控制、查看你的整个网络。尽管Net-SNMP提供了可用来构建你自己的NMS网管系统的所有工具,我们不会再进一步讨论关于NMS的话题。不过请记住,如果你认为你的SNMP设备厂商没有提供SNMP代理方面的详细信息,很可能是因为他们希望你购买他们的NMS网络管理系统,或者购买能够在另一个NMS平台上使用的插件。 1.2. SNMP的三大版本  SNMP的常用版本有三个:SNMPv1、SNMPv2、SNMPv3 SNMPv1是为基于公共管理的初始标准。SNMPv
Jetpropelledsnake21
2018/11/22
6.1K0
相关推荐
snmp协议的trap操作采用基于_maven批量导入jar包
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档