求一个linux将监控网卡出入流量的shell脚本,每隔设定的时间输出到文本或其他地方存储

求一个linux将监控网卡出入流量的shell脚本,每隔设定的时间输出到文本或其他地方存储,第1张

这个不会有人帮你写出个完整的shell。因为每台机器的 *** 作系统都不一定吻合,不过我可以给你个自己做的参考:
1,启动你服务器的snmp服务器,编辑/etc/snmp/snmpdconf
修改里面的 com2sec notConfigUser default <你的community名字>, 有困惑,可以在网上搜索snmp服务配置。然后/etc/initd/snmpd start 启动服务。
2 安装net-snmp
yum install net-snmp
3验证你服务器snmp是否正确安装:
snmpwalk -v 2c -c <你自己设置的community> 127001
有返回信息就是正确。
4 写你shell程序,通过snmpwalk可查看各网卡端口流量,可根据下面我提供的信息你自己选择你要监控的端口。
[root@AAA snmp]# snmpwalk -v 2c -c <你自己定义community> 127001 IF-MIB::ifHCOutOctets
IF-MIB::ifHCOutOctets1 = Counter64: 2458933344
IF-MIB::ifHCOutOctets2 = Counter64: 1714076390
IF-MIB::ifHCOutOctets3 = Counter64: 0
IF-MIB::ifHCOutOctets4 = Counter64: 0
[root@AAA snmp]# snmpwalk -v 2c -c c <你自己定义community> 127001 IF-MIB::ifHCInOctets
IF-MIB::ifHCInOctets1 = Counter64: 2458940740
IF-MIB::ifHCInOctets2 = Counter64: 3011885260
IF-MIB::ifHCInOctets3 = Counter64: 0
IF-MIB::ifHCInOctets4 = Counter64: 0
实际shell赋值,可以通过snmpget命令而不是snmpwalk。比如:
[root@AAA snmp]# snmpget -v 2c -c <你自己定义community>127001 IF-MIB::ifHCOutOctets1
IF-MIB::ifHCOutOctets1 = Counter64: 2458947627
这样,你就可以通过shell,吧值赋给变量,例子如下:
[root@AAA snmp]# var=`snmpget -v 2c -c <你自己定义community> 127001 IF-MIB::ifHCOutOctets1 | awk '{print $4}'`;echo $var
2458981520
我已经提供全过程的信息给你了。具体你琢磨着去弄你的shell吧。
哈,有点头晕。。。如果只监测自己机器,楼上仁兄那个最好。采纳他吧。

MAC地址的OID值一般是136111122
用SNMPWALK命令就是snmpwalk -c public -v 1 -m
ALL 100152 136111122
其它方法看这里。>

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10737171.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存