Lassen Sie eine PHP-Site SNMP-Informationen an eine Netzwerkmanagement-App senden

8

Ich versuche, eine PHP-Website dazu zu bringen, Informationen über SNMP zu senden. Ich habe viel über SNMP gelesen, aber ich weiß immer noch nicht genau, wo ich anfangen soll.

Ich glaube, ich muss eine MIB mit allen OIDs erstellen, die meine Website verwenden wird, um die Informationen zu senden. Ist das richtig? Wie und wo kann ich diese Variablen (OIDs) definieren? Kann mir jemand in die richtige Richtung zeigen?

Ich verwende FreeBSD auf dem Server.

Vielen Dank im Voraus.

    
rogeriopvl 08.09.2009, 15:40
quelle

3 Antworten

4

Sie versuchen, eine "SNMP-Trap" zu senden. Sie müssen nicht unbedingt eine MIB definieren. Eine MIB übersetzt nur einen "semi-menschenfreundlichen" Namen in eine OID wie SNMPv2-MIB :: sysContact.0 in .1.3.6.1.2.1.1.4.0. Für eine private Anwendung könnten Sie theoretisch jede gewünschte OID verwenden, genauso wie Sie theoretisch eine beliebige IP-Adresse für ein privates Netzwerk verwenden könnten, das nicht mit anderen verbunden ist. Ich bin mir nicht sicher, ob es einen bevorzugten "privaten" OID-Zweig gibt. Es gibt einige gute Informationen, um Sie bei Ссылка zu unterstützen. Es sieht so aus, als ob PHP das Senden von SNMP-Traps nicht direkt unterstützt, aber Sie könnten den Befehl "snmptrap" aufrufen.

    
Ted 09.09.2009, 05:16
quelle
1

Es gibt ein paar Probleme:

  • Um Ihren eigenen Top-Level-Bezeichner zu erhalten, müssen Sie ihn wahrscheinlich irgendwo anfordern (und wahrscheinlich Geld bezahlen?), aber es gibt einen experimentellen Bereich, den Sie zum Testen verwenden können. (Dies ist kein PHP Problem, es ist ein snmp Problem / Feature)

  • Soweit ich weiß, geht das Protokoll von einem Prozess aus, der auf einen Port hört, der sich völlig von dem HTTP-Port unterscheidet, und auch nicht TCP, sondern UDP. Das Erstellen einer PHP-Seite auf die übliche Weise wird nicht funktionieren.

Eine mögliche Lösung könnte darin bestehen, ein snmp-Modul in Apache (oder dem von Ihnen verwendeten Webserver) zu verwenden, mit dem Sie die Antwortlogik in PHP programmieren können. Mein Gefühl ist, dass die meisten snmp php Sachen, die Sie im Web begegnen, nicht über den Agententeil, sondern über den Managerpart sind.

    
Simon Groenewolt 08.09.2009 20:17
quelle
0

Was ich weiß ist, dass SNMP ein Protokoll ist, bei dem ein Host eine Anfrage nach dem Wert einer bestimmten OID an ein Gerät sendet und dann eine Antwort erhält.

Ich bin mir nicht sicher, ob Sie eine PHP-Website haben, die auf diese Pakete antwortet.

Die einzige Information, die ich gefunden habe, ist, dass PHP eine SNMP-Client-Klasse hat PHP SNMP

Und wikipedia gibt dir detaillierte Informationen über SNMP Linktext

Ich bin aber immer noch sicher, dass eine Website nicht als SNMP-Server fungieren kann.

    
Mauro Destro 08.09.2009 19:32
quelle

Tags und Links