Ovaron 10 Geschrieben 23. Juni 2009 Melden Teilen Geschrieben 23. Juni 2009 Hi! Ich programmiere derzeit an einem kleinen SNMP-Tool, dass auf Cisco Switches zugreifen und diverse Werte auslesen und interpretieren soll. Dafür such ich immer wieder passende OIDs, leider werde ich oft nicht fündig. Vielleicht sind ja hier im Forum ein paar Leute unterwegs, die sich damit auskennen. Aktuell suche ich eine OID oder eine Möglichkeit, mit der ich mir die Anzahl der Einträge in der MAC-Adress-Tabelle des Switches anzeigen lassen kann. Was ich mir wünschen würde wäre etwas, das der Ausgabe des Kommandos "show mac-address-table count" entspricht. Kann mir da jemand vielleicht helfen ? Zitieren Link zu diesem Kommentar
Servidge 10 Geschrieben 24. Juni 2009 Melden Teilen Geschrieben 24. Juni 2009 So im Kopf habe ich für den Fall jetzt auch keine passende oid. Und zum ausprobieren habe ich gerade auch keinen Switch greifbar. Bisher habe ich aber wenn mibs/oids fehlten die bei Cisco auf dem FTP gefunden. ftp.cisco.com/pub/mibs/ Ansonsten mit nem snmpwalk einmal den kompletten tree des Gerätes abfragen und dann nach nem Eintag suchen. [Edit:] Wenn ich mir das Ergebnis der Abfrage aber durch den Kopf gehen lasse gibt es wars***einlich dafür kein eigene OID. Zitieren Link zu diesem Kommentar
Ovaron 10 Geschrieben 24. Juni 2009 Autor Melden Teilen Geschrieben 24. Juni 2009 Die MIBs die mein Catalyst 2950 unterstützt bin ich schon durch grob durchgegangen .. ich werd da nochmal genauer suchen. Meine bisherige Lösung sieht so aus, dass ich die gesamte MAC-Tabelle abfrage und die Anzahl der Einträge zähle. Bei 8000 Einträgen steht die Switch CPU dabei aber schnell an ihrer Leistunggrenze und die gesamte Abfrage mittels snmpbulkwalk dauert 1:30 Minuten was viel zu lange ist. Falls es keine einzelne OID dafür gibt, ist das auch nicht schlimm, ich such nur einen Weg, wie ich schneller an diesen Wert komme, wenn nötig auch über Umwege. Irgendeine Möglichkeit muss es aber doch geben. Es gibt immerhin Zähler für die maximal möglichen Einträge in der MAC-Tabelle und einen Zähler für alle jemals gelernten MAC-Adressen, der aber immer nur größer wird, ausgealterte Adressen werden dabei nicht berücksichtigt. Was ich übrigens damit erreich will, ist die Erkennung einer MAC-Flooding Attacke. Das könnte ich auch über eine unnatürliche Erhöhung des Zähler für die gesamt gelernten MAC-Adressen, allerdings muss ich dazu auf jedem Switch (vielleicht auch für jedes IF, für das gezählt werden soll; das weiß ich noch nicht) Traps konfigurieren, was ich eigentlich vermeiden wollte. Zitieren Link zu diesem Kommentar
Wordo 11 Geschrieben 24. Juni 2009 Melden Teilen Geschrieben 24. Juni 2009 Wieso konfigurierst du den Switch nicht einfach so, dass solche Attacken gleich unterbunden werden? Catalyst 2950 and Catalyst 2955 Switch Software Configuration Guide, 12.1(22)EA11 and Later - Configuring Port-Based Traffic Control [Cisco Catalyst 2950 Series Switches] - Cisco Systems Ich würde Cacti zu graphischen Auswertung nemen, da muss das Rad nicht neu erfunden werden. Zitieren Link zu diesem Kommentar
Ovaron 10 Geschrieben 24. Juni 2009 Autor Melden Teilen Geschrieben 24. Juni 2009 Danke für den Tipp! Ich weiß um die Möglichkeiten einen Switch gegen MAC-Flooding und andere Angriffe abzusichern. Der Sinn des Tools an dem ich arbeite ist jedoch, auszuloten, inwieweit diese Erkennung über SNMP an ein externes Tool ausgelagert werden kann, und das bei möglichst wenig zusätzlicher Konfiguration am Switch. Zitieren Link zu diesem Kommentar
Ovaron 10 Geschrieben 12. Juli 2009 Autor Melden Teilen Geschrieben 12. Juli 2009 Hallo! Ich hab wieder ein Problem bzw. eine Frage. Ich würde gerne von meinem Switch den SNMP-Eintrag "dot1dTpLearnedEntryDiscards" abfragen. Dieser gehört zur BRIDGE-MIB die laut Cisco-Website von meinem Switch unterstützt wird. Ich kann den Wert jedoch nicht abfragen, andere Werte der MIB funktionieren jedoch. Hat jemand eine Ahnung woran das liegen könnte? Zitieren Link zu diesem Kommentar
Ovaron 10 Geschrieben 13. Juli 2009 Autor Melden Teilen Geschrieben 13. Juli 2009 Hab die Lösung gefunden, man muss immer die and Community die VLAN-Id in Form von community@vlan dranhängen, dann funktioniert die Abfrage. Jetzt hab ich allerdings ein neues Problem: Wie frage ich schnell große Tabellen ab? z.B. dot1dTpFdbAddress aus der Bridge-MIB. Die Tabelle entspricht der MAC-Adress-Tabelle eines Switches, daher passen einige 1000 Einträge rein. Bei meinem Switch sind es knapp über 8000. Mit dem Kommando "snmpwalk -v 2c -c public@192 192.168.0.192 1.3.6.1.2.1.17.4.3.1.1 dauert die Abfrage knapp 2 Minuten, das müsste doch eigentlich wesentlich schneller gehen, oder? Mit snmpgetbulk komm ich auch nicht weiter, da schaff ich es nicht, dass mir 1.) nur der subtree den ich angebe und 2.) so viele Werte zurückgeliefert werden. Hat jemand eine Ahnung, wie ich solche großen Tabellen innerhalb von wenigen Sekunden abfragen kann? Zitieren Link zu diesem Kommentar
lexus 10 Geschrieben 15. Juli 2009 Melden Teilen Geschrieben 15. Juli 2009 (bearbeitet) Die Antwort ist relativ einfach: Leider gar nicht SNMP-Abfragen sind sehr CPU-lastig. Und Netzwerkkomponenten haben nun mal nicht die dicksten CPUs... bearbeitet 15. Juli 2009 von lexus vertippt Zitieren Link zu diesem Kommentar
Ovaron 10 Geschrieben 16. Juli 2009 Autor Melden Teilen Geschrieben 16. Juli 2009 Die Antwort ist relativ einfach:Leider gar nicht SNMP-Abfragen sind sehr CPU-lastig. Und Netzwerkkomponenten haben nun mal nicht die dicksten CPUs... Hmm .. das ist nicht gut :( Ich dachte eigentlich das getbulk genau dafür gemacht wurde, nur schaff ich es irgendwie nie, eine ganze Tabelle mit so vielen Einträgen abzufragen. Entweder liefert mir das Kommando nur einige Einträge, oder noch Einträge die schon nicht mehr in diese Tabelle gehören. Ich weiß nicht ob es daran liegt, dass ich die beiden Parameter die getbulk hat (non-repeaters und max-repetitions) nicht richtig setze, oder es mit getbulk überhaupt nicht funktioniert. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.