public void SNMPmac(string ip) { try { Pdu pdu; SnmpV1Packet result; arrSNMP[5] = string.Empty; OctetString community = new OctetString("public"); AgentParameters param = new AgentParameters(community); param.Version = SnmpVersion.Ver1; IpAddress agent = new IpAddress(ip);//IP address UdpTarget target = new UdpTarget((System.Net.IPAddress)agent, 161, 2000, 1); pdu = new Pdu(PduType.Get); pdu.VbList.Add("1.3.6.1.2.1.2.2.1.6.1"); //MAC addres result = (SnmpV1Packet)target.Request(pdu, param); if (result != null) { if (result.Pdu.ErrorStatus != 0) { } else { if ((result.Pdu.VbList[0].Value.ToString()).Trim() == string.Empty) { pdu = new Pdu(PduType.Get); pdu.VbList.Add("1.3.6.1.2.1.2.2.1.6.2"); //MAC addres result = (SnmpV1Packet)target.Request(pdu, param); if ((result.Pdu.VbList[0].Value.ToString()).Trim() == string.Empty) { pdu = new Pdu(PduType.Get); pdu.VbList.Add("1.3.6.1.2.1.2.2.1.6.3"); //MAC addres result = (SnmpV1Packet)target.Request(pdu, param); if ((result.Pdu.VbList[0].Value.ToString()).Trim() == string.Empty) { } else { arrSNMP[5] = (result.Pdu.VbList[0].Value.ToString());//MAC addres } } else { arrSNMP[5] = (result.Pdu.VbList[0].Value.ToString());//MAC addres } } else { arrSNMP[5] = (result.Pdu.VbList[0].Value.ToString());//MAC addres } } } target.Close(); } catch (Exception) { } }Для работы вам понадобится библиотека:SnmpSharpNet.dll
Исходники по языку программирования CSharp

Так же если у вас есть предложение о сотрудничестве, пожелания, указать на нарушения сайта или просто сказать слова благодарности, все это вы можете сделать через форму обратной связи. Читать дальше
Получение MAC адреса через SNMP
Также читайте: Application,
Device,
Network,
Printer,
SNMP,
Windows Form
Copyright © 2011-2015 Справочник по C#. Все права защищены.
Комментариев нет:
Отправить комментарий
Большая просьба, не писать в комментариях всякую ерунду не по теме!