macmon Klassendefinition für Aruba CX Switche (SNMP)

In diesem Beitrag möchte ich euch eine auf SNMP angepasste macmon Klassendefinition für Aruba CX Switche vorstellen.
macmon selber hat bisher noch keine mit SNMP angepasste Klassendefinition im Angebot. (Stand: Juni 2023 / macmon v5.35.1)

UPDATE (18.8.2023)
Seit der macmon Version 5.36.1 ist eine Klasse seitens macmon enthalten. Wer jedoch nicht updaten kann oder will, kann selbstverständlich weiterhin den folgenden Artikel nutzen.

Einleitung

Die hier vorgestellte Definition ist leider nicht zu 100% auf SNMP basiert – aber das liegt eher noch an Aruba statt macmon.

Warum SNMP und nicht weiter die API nutzen? Ganz klar wegen Performance. Die Steuerung über API dauert in der Regel deutlich länger als die Steuerung über SNMP. Wem die Performance egal ist, der kann auch die von macmon bereitgestellt Klasse nutzen.

Voraussetzung – Was wird benötigt?

  1. macmon Version
    >= 5.35.0 (einige Vorgängerversionen sollten auch funktionieren)
    Ich empfehle grundsätzlich immer die aktuellste Version
  2. Aruba CX Firmware
    >= 10.xx (vorherige Versionen ab ca Q3-Q4/2022 könnten auch schon funktionieren)
    Ich empfehle grundsätzlich immer die aktuellste Version
  3. Zugang Aruba CX über CLI
  4. Zugang macmon mit Adminberechtigungen
    Minimum müssen Klassen, Zugangsdaten und Netzwerkgeräte bearbeitet werden können

Definition der Klasse

Folgend wird die macmon Klassendefinition für Aruba CX für eine manuelle Anlage oder den Import über die API angeboten.

Information

Dadurch das einige Methode noch die API benötigen muss der Switch API und SNMP Zugangsdaten zugewiesen haben.
Seit Aruba OS 10.12.xxx wird das Schalten von VLANs auch über SNMP unterstützt – allerdings keine Tagged-VLANs! Daher basiert die folgende Methode noch auf API für die VLANs.

Manuelle Anlage

Für die manuelle Anlage in macmon bitte einfach eine Klasse erstellen und die Methoden der Tabelle entsprechend auswählen. Die Spalte Typ gibt die nötige Art der Zugangsdaten an.

VorgangMethodelesend / schreibendTyp
Inventarstatus auslesenENTITY-MIBlesenSNMP
Systeminformationen auslesenlesenSNMP
Interface Status auslesenIF-MIB::ifOperStatuslesenSNMP
Interfaces auslesenIF-MIB::ifEntrylesenSNMP
VLAN auslesenAruba APIlesenAPI
ARP auslesenIP-MIB.ipNetToPhysicalEntrylesenSNMP
MAC Adressen auslesenBridgeMIBlesenSNMP
Topologie auslesenTopologie (LLDP, CDP)lesenSNMP
Dot1X Status auslesenAruba APIlesenAPI
Interface (ent)sperrenIF-MIB::ifAdminStatusschreibenSNMP
VLAN setzenAruba APIschreibenAPI
Dot1X Status setzenAruba APIschreibenAPI
Autorisation ändernschreiben
Konfiguration speichernschreiben

macmon API

1. Download Definition als JSON Datei

2. Import JSON über Windows PowerShell

Information

Voraussetzung seitens macmon ist ein Admin Benutzer (oder der “admin” Benutzer selber) mit API Berechtigung.
Das folgende Skript komplett kopieren und in die PowerShell einfügen. Für die Ausführung wird nach IP/FQDN, Benutzername, Passwort und die oben angebotene Datei gefragt. Ein Rückgabewert von 200 zeigt eine erfolgreiche Ausführung an.

Name der Klasse nach Import: “ArubaCX_SNMP_ITW-YYYYMMTT” (kann in macmon umbenannt werden)

PowerShell Version >= v7.3
# Parameter abfragen `
$mmhost = Read-Host -Prompt 'macmon IP oder FQDN'; `
$mmuserpw = Get-Credential -Title "Bitte macmon Zugangsdaten eingeben" -Message " "; `
Add-Type -AssemblyName System.Windows.Forms; `
$mmfile = New-Object System.Windows.Forms.OpenFileDialog; `
$null = $mmfile.ShowDialog(); `
# API Call absetzen `
Invoke-WebRequest -SkipCertificateCheck -Uri "https://$mmhost/api/v1.1/networkdeviceclasses" `
  -Method POST -ContentType "application/json" -Credential $mmuserpw -InFile $mmfile.Filename;
  
PowerShell Version < v7.3 (bei Fehlern mit Zertifikat)
# Zertifikatschecks deaktivieren für die Dauer der Powershell Sitzung `
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$True} `
# Parameter abfragen `
$mmhost = Read-Host -Prompt 'macmon IP oder FQDN'; `
$mmuserpw = Get-Credential -UserName 'admin' -Message 'macmon Zugangsdaten'; `
Add-Type -AssemblyName System.Windows.Forms; `
$mmfile = New-Object System.Windows.Forms.OpenFileDialog; `
$null = $mmfile.ShowDialog(); `
# API Call absetzen `
Invoke-WebRequest -Uri "https://$mmhost/api/v1.1/networkdeviceclasses" `
  -Method POST -ContentType "application/json" -Credential $mmuserpw -InFile $mmfile.Filename
  

Weitere Beiträge für Aruba CX Switche mit macmon

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert


WordPress Cookie Plugin von Real Cookie Banner