今天早上,由于SNMP通过UDP运行,SNMP陷阱没有“通过”,所以在工作中遇到了很大的问题。 我记得在大学的networking课上,UDP不能保证像TCP / IP这样的交付。 维基百科说,SNMP可以通过TCP / IP运行,但是UDP更常见。 我知道TCP / IP上UDP的一些优点是速度,广播和多播。 但在我看来,保证交付对networking监控来说比广播能力更重要。 特别是当存在严重的高度安全需求时。 我的一位同事告诉我,当stream量变大时,UDP数据包将首先被丢弃。 这是另一个selectTCP / IP over UDP进行networking监视(IMO)的理由。 那么为什么SNMP使用UDP? 我无法弄清楚,也无法在Google上find合适的理由。
我希望能够通过命令行运行程序,我想用VbScript启动它。 我也想得到命令行的输出,并将其分配给一个variables,我希望所有这一切都静静地完成,没有CMD窗口popup。 我已经分别pipe理了两件事情,但不是在一起。 这是我到目前为止。 从cmd运行命令并获取输出: Dim WshShell, oExec Set WshShell = WScript.CreateObject("WScript.Shell") Set oExec = WshShell.Exec("C:\snmpget -c public -v 2c 10.1.1.2 .1.3.6.1.4.1.6798.3.1.1.1.5.1") x = oExec.StdOut.ReadLine Wscript.Echo x 上面的脚本工作,做我想要的,只是CMDpopup一个短暂的时刻。 这是一个脚本,将运行静默,但不会抓住输出 Set WshShell = WScript.CreateObject("WScript.Shell") Return = WshShell.Run("C:\snmpset -c public -v 2c -t 0 10.1.1.2 .1.3.6.1.4.1.6798.3.1.1.1.7.1 i 1", 0, true) 有没有办法让这两个一起工作? 让我给你一个背景,为什么我要这样做。 我基本上每5-10分钟就会轮询一个单元,并且在发生某些情况时,我会让脚本发送电子邮件或者发出一个消息框,但是我不希望在我的计算机上整天出现cmd行。 有什么build议么? 谢谢