Ankündigung

Einklappen
Keine Ankündigung bisher.

Zählersstand eines Druckers per SNMP abfragen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Zählersstand eines Druckers per SNMP abfragen

    Moin zusammen, ich möchte gerne die Zäherstände unserer Drucker per SNMP abfragen (die können das auch, habe ich mal mit einem Druckermonitor überprüft, der OID ist korrekt) und per PHP auf einer Webseite ausgeben. Im template der Seite habe ich folgenden Code:

    PHP-Code:
    <?php
       
    //Druckerabfrage

       
    function seitenzahlen($ip) {
          
    $drucker fSockOpen($ip80$errno$errstr5);
          if (!
    $drucker) {
             return 
    "Drucker im Netz ggw. nicht erreichbar."; }
          else{
            
    $data snmpget($ip"public"".1.3.6.1.2.1.43.11.1.1.9.1.9"10);
            
    $data intval(str_replace("INTEGER: """$data));
            
    $data .= " Seiten";
            return 
    $data;}
       }

       
    $printerR1 "192.168.1.1";
       
    $printerR2 "192.168.1.2";
       
    $printerR3 "192.168.1.3";
       
    $community "public";

       
    $output "<h2>Z&auml;hlerst&auml;nde der Drucker</h2>";

       
    $output .= "<p>Drucker Raum 1: " seitenzahlen($printerR1) . "</p>";
       
    $output .= "<p>Drucker Raum 2 : " seitenzahlen($printerR2) . "</p>";
       
    $output .= "<p>Drucker Raum 3: " seitenzahlen($printerR3) . "</p>";

       echo 
    $output;
       ...
    Das funktioniert natürlich nicht, weil dem Server, auf dem das PHP-Skript läuft, unsere hausinternen IP-Adressen (bei den Druckern feste IP-Adressen) nicht bekannt sind.
    Entsprechend steht auf der Seite hinter jedem Drucker, dass dieser nicht erreichbar sei.

    Wie bekommtman das hin?

    Dass damit alle Welt sehen kann, wieviel wir gedruckt haben, soll erst noch mal nicht interessieren. Den Zugriff beschränken folgt im nächsten Schritt.

    AS

  • #2
    Naja, dann musst du dafür sorgen, dass die Drucker erreichbar sind. Mit PHP hat das nichts zu tun.

    Es gibt übrigens keinen Grund Umlaute zu verst&uuml;mmeln.

    Kommentar


    • #3
      Und genau dafür fehlt mir der Ansatz. Gibt es irgendwie eine Möglichkeit, ein Template lokal im Netz laufen zu lassen? Oder wie greift der Server des Providers auf eine Komponente unseres Netzwerkes zu, ohne dass gleich eine riesen Sicherheitslücke aufgemacht wird. Das Template läuft unter Wordpress.

      Oder ist es sinnvoll dort die Frage zu posten?

      Nachtrag: Die Seite muss nur lokal im Netz aufrufbar sein. Die Druckerstände muss ich nicht von zu Hause aus abfragen können.

      Kommentar


      • #4
        Zitat von ASenna Beitrag anzeigen
        Und genau dafür fehlt mir der Ansatz. Gibt es irgendwie eine Möglichkeit, ein Template lokal im Netz laufen zu lassen? Oder wie greift der Server des Providers auf eine Komponente unseres Netzwerkes zu, ohne dass gleich eine riesen Sicherheitslücke aufgemacht wird. Das Template läuft unter Wordpress.

        Oder ist es sinnvoll dort die Frage zu posten?
        Das Thema hat auch nix mit Wordpress zu tun.

        Was spricht gegen einen eigenen Webserver im lokalen Netz?

        Kommentar


        • #5
          Ich hatte etwas gehofft, dass ich für diese Aufgabe den Webserver unseres Providers nutzen kann. Aber das wird vermutlich zu kompliziert. dann muss ich mich wohl mal an XAMPP machen. Denn das dürfte wohl erste Wahl sein, oder?

          Kommentar


          • #6
            Zitat von ASenna Beitrag anzeigen
            Ich hatte etwas gehofft, dass ich für diese Aufgabe den Webserver unseres Providers nutzen kann. Aber das wird vermutlich zu kompliziert. dann muss ich mich wohl mal an XAMPP machen. Denn das dürfte wohl erste Wahl sein, oder?
            XAMPP eignet sich nicht als Produktivserver.

            Kommentar


            • #7
              Oh Mann, dann wird das ja noch komplizierter. Gibt es für mein Problem noch einen anderen Ansatz?

              Kommentar


              • #8
                (Warum) muss es PHP sein?
                The string "()()" is not palindrom but the String "())(" is.

                Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                PHP.de Wissenssammlung | Kein Support per PN

                Kommentar


                • #9
                  Ich bin kein Informatiker und bewege mich daher nur begrenzt virtuos durch die verschiedenen Systeme. Meine Internetseiten sind klassisch HTML mit ein bischen CSS. Wenn es aber irgendwie kompliziert wird, berechne ich mit PHP. Daher dachte ich, lässt sich das Problem am ehesten mit PHP lösen.

                  Kommentar


                  • #10
                    Für Applikationen wie deine gibt es schlüsselfertige Industrie-PC's in Zigarettenschachtelgröße. Suche mal mit den Schlagworten; Industrie-PC Linux PHP Nginx Samba.

                    Kommentar


                    • #11
                      oder eben doch eigenbau:

                      https://www.elektronik-kompendium.de...pi/2007081.htm
                      und dann gleich das dazu:
                      https://www.elektronik-kompendium.de...pi/2007081.htm

                      möglicherweise kann dein router auch mehrere printer verwalten.

                      Oder wie greift der Server des Providers auf eine Komponente unseres Netzwerkes zu, ohne dass gleich eine riesen Sicherheitslücke aufgemacht wird.
                      sowas sollte man, weiß man nicht sehr genau wasman tut, bleiben lassen.

                      Kommentar


                      • #12
                        Danke für die Tipps. ich arbeite mich da mal rein.

                        AS

                        Kommentar

                        Lädt...
                        X