SNMP
全称为simple network management protocol 中文为简单网络管理协议.
1简介功能
简单管理所有设备
①管理端需要获取被管理端的一个状态信息时,管理端就发送一个获取指令给被管理端,被管理端收到此指令后把管理端要获取的信息封装成报文后返回给管理端;
②当管理端需要修改被管理端上的一些配置参数时,管理端就发送一个修改指令给被管理端,被管理端收到后修改相应的配置,如果修改成功,则返回修改成功的信息给管理端,如果未修改成功,则返回相应的错误信息给管理端;
③如果被管理端自己知道自己发生了故障,那它就主动发生一个消息给管理端,说明自己哪里出现了故障。
2 snmp协议的版本
snmp v1(版本1):有三个community认证, 分别是read-only( 只能获取信息 )、read-write( 能获取信息,也能发送控制指令 )、trap( agent主动联机nms );
snmp v2(版本2):功能增强,但仍基于community的认证; 因此又称2c版本;
snmp v3(版本3):这个版本认证加强,但少人用.
3 snmp的服务器NMS(管理端)
① snmp的服务器主要被人称为nms(network management station,网络管理工作站), 因为它可以用来收集各种信息;
②snmp的服务器并不一定需要监听某个端口,因为一般来说,都是服务器主动去向客户端要求获取一些信息; 当服务器有监听端口的时候,那就是客户需要主动发送信息给服务器。这时信息的交流的主动双向的。
③snmp服务器端可以做的操作( get, getnext, getbulk, set, getresponse )
4snmp的客户端AGENT(被管理端)
1snmp的客户端主要被人称为agent.
2snmp的客户端相对于其它客户端来讲比较特殊,因为它需要监听某个端口(netstat -tlunp,snmp客户端主要监听的是UDP161端口), 一般像ftp, http等服务都是服务器端才需要监听端口;
5 snmp的工作原理
snmp的nms通过指令向正在监听某个端口的客户( agent )发送查询、控制指令;
从上图中可知SNMP的由三部份组成,NMS、Agent、MIB。管理端(NMS)要想获取到监控数据时就向Agent(被监控端)发送get操作,Agent通过MIB库抓取到数据后就返还给NMS,如果是Agent主动向NMS发送信息,那就采用trap操作。
MIB:管理信息库
6 snmp的mib( snmp的mib是比较难理解的一个方面 );
1 snmp获取信息最终是靠oid来获取的,oid类似于ip。 ip区别主机,oid区别资源。
2 ip比较难记,于是产生了dns服务器. oid也比较难记,于是有了mib,mib维护着oid和名字之间的对应关系;
3 mib的文件主要存放在/usr/share/snmp/mibs/这个目录中,其中,mib2的名字为SNMPv2-MIB
ICMP
ICMP网际控制报文协议 用来使主机或路由器报告差错情况和提供有关异常情况的报告。这样就可以更有效的转发IP数据报和提高交付成功的机会。
功能:
差错报告(通知ip包被丢弃的原因)
确认ip包能否成功到达
消息询问
ICMP分为两大类,ICMP差错报告报文和ICMP询问报文。
ICMP差错报告报文分为四类:终点不可达报文、时间超过报文、改变路由报文、参数问题报文。
ICMP询问报文分为两类:回送请求和回送回答报文、时间戳请求和时间戳回答报文。
ping命令用了哪种icmp?echo reply