开发者社区> 问答> 正文

C# SnmpSharpNet UdpTarget.Request 报错 ?报错

C# SnmpSharpNet target.Request 报错 错误:Request has reached maximum retries.
问提描述:用SNMP target.Request 定时(每分)获取交换机端口流量,当获取一段时间后 报错
交换机管理地址PING不通,过十来分钟后交换机又能PING通。不知道问题出在哪? 是交换机有保护机制还是获取式有问题? 求解 获取代码如下: 传入IP,端口 161,共同体:public, OID

            public static string getSnmpValByOid(string host, int snmpPort, string community, string oid)
    {
        string val = "";
        OctetString second = new OctetString(community);
        AgentParameters param = new AgentParameters(second);

        param.Version = SnmpVersion.Ver2;

        IpAddress agent = new IpAddress(host);

        UdpTarget target = new UdpTarget((IPAddress)agent, snmpPort, 5000, 1);

        Pdu pdu = new Pdu(PduType.Get);
        pdu.VbList.Add(oid);


        SnmpV2Packet result = (SnmpV2Packet)target.Request(pdu, param);//报错

        if (result != null)
        {

            if (result.Pdu.ErrorStatus == 0)
            {
                val = result.Pdu.VbList[0].Value.ToString();
            }
        }
        target.Close();
        return val;
    }

展开
收起
爱吃鱼的程序员 2020-06-23 14:25:27 1585 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    应该是交换机有检测机制,不让你请求次数太频繁

    2020-06-23 14:25:46
    赞同 展开评论 打赏
问答分类:
C#
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载