Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. [gelöst] - Zabbix (FritzBox etc.)

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    287

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

[gelöst] - Zabbix (FritzBox etc.)

Scheduled Pinned Locked Moved Off Topic
42 Posts 7 Posters 5.5k Views 8 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • CodierknechtC Online
    CodierknechtC Online
    Codierknecht
    Developer Most Active
    wrote on last edited by
    #27

    Des Rätsels Lösung:

    Die Header für den Request müssen so gesetzt werden:

    request.setHeader('Content-Type: text/xml');
    

    und nicht so:

    request.setHeader('Content-Type', 'text/xml');
    

    Dummerweise wirft die JS-Enginge von Zabbix hier keinen Fehler.

    Es kann jetzt also an der Ecke weitergehen.
    Als erstes soll ein Check auf die Portfreigaben eingerichtet werden.
    Das Abfragen der Fritte über TR-064 ist nämlich deutlich schneller als der Kram über .../xyz.lua.

    Was fällt euch so alles ein, was sich mit Zabbix an der Fritte monitoren lässt?

    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
    HmIP|ZigBee|Tasmota|Unifi
    Zabbix Certified Specialist
    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

    BananaJoeB 1 Reply Last reply
    0
    • CodierknechtC Codierknecht

      Des Rätsels Lösung:

      Die Header für den Request müssen so gesetzt werden:

      request.setHeader('Content-Type: text/xml');
      

      und nicht so:

      request.setHeader('Content-Type', 'text/xml');
      

      Dummerweise wirft die JS-Enginge von Zabbix hier keinen Fehler.

      Es kann jetzt also an der Ecke weitergehen.
      Als erstes soll ein Check auf die Portfreigaben eingerichtet werden.
      Das Abfragen der Fritte über TR-064 ist nämlich deutlich schneller als der Kram über .../xyz.lua.

      Was fällt euch so alles ein, was sich mit Zabbix an der Fritte monitoren lässt?

      BananaJoeB Offline
      BananaJoeB Offline
      BananaJoe
      Most Active
      wrote on last edited by
      #28

      @codierknecht das Problem mit Zabbix ist ja das man manchmal einfach in eine Sammelwut verfällt. Ist zwar schön was man alles abrufen kann, aber ob man das braucht ...

      Up- und Download Auslastung frage ich zum Beispiel meinen Switch hinter der Fritte per SNMP statt der Fritte selbst.

      Trotzdem nehme ich nur zu gerne dann dein fertiges Template, zum einen als schönes Beispiel, zum anderen weil man das dann auch schön zeigen kann und die Leute damit etwas anfangen können.

      Du kannst noch die DECT Geräte abfragen usw. Dann bist du irgendwann bei allem was der TR064 und/oder FritzDECT Adapter raussaugt, nur ohne steuern. Kannst dir ja bei den Adapter Inspiration holen.
      Statistiken zur Verbindung / Fehlerrate werden auch immer gerne genommen. Wobei es da ja DSL, Glasfaser und LTE gäbe.

      Das Muster-Template kann gerne alles herausholen was es gibt - man kann dann ja das deaktivieren was man nicht braucht bzw. das Template klonen und zusammenstreichen ...

      ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

      1 Reply Last reply
      0
      • CodierknechtC Online
        CodierknechtC Online
        Codierknecht
        Developer Most Active
        wrote on last edited by
        #29

        Der Vollständigkeit halber hier nun das komplette Script in Zabbix, um die Anzahl der Portweiterleitungen zu ermitteln:

        const params = JSON.parse(value);
        
        var requestBody = '<?xml version="1.0" encoding="utf-8"?>' +
        '<s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">' +
        '    <s:Header>' +
        '        <h:InitChallenge xmlns:h="http://soap-authentication.org/digest/2001/10/" s:mustUnderstand="1">' +
        '            <UserID>' + params.username + '</UserID>' +
        '        </h:InitChallenge>' +
        '    </s:Header>' +
        '    <s:Body>' +
        '        <u:' + params.action + ' xmlns:u="' + params.urn + '" />' +
        '    </s:Body>' +
        '</s:Envelope>';
        
        const action = params.urn + '#' + params.action;
        
        // Initialize challenge with Fritz!Box
        var url = 'http://' + params.ip + ':49000' + params.url;
        const request = new HttpRequest();
        request.addHeader('Content-Type: text/xml; charset="utf-8"');
        request.addHeader('User-Agent: AVM UPnP/1.0 Client 1.0');
        request.addHeader('SoapAction: ' + action);
        var response = request.post(url, requestBody);
        
        var statusCode = request.getStatus();
        if (statusCode != 200) {
            throw 'Error ' + statusCode + ' initializing authentication!';
        } else {
            // Calculate authentication
            const nonce = XML.query(response, '//Nonce/text()');
            const realm = XML.query(response, '//Realm/text()');
            const secret = md5(params.username + ':' + realm + ':' + params.password);
            const auth = md5(secret + ':' + nonce);
        
            // Get values with authentication
            requestBody = '<?xml version="1.0" encoding="utf-8"?>' +
            '<s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">' +
            '    <s:Header>' +
            '        <h:ClientAuth xmlns:h="http://soap-authentication.org/digest/2001/10/" s:mustUnderstand="1">' +
            '            <Nonce>' + nonce + '</Nonce>' +
            '            <Auth>' + auth + '</Auth>' +
            '            <UserID>' + params.username + '</UserID>' +
            '            <Realm>' + realm + '</Realm>' +
            '        </h:ClientAuth>' +
            '    </s:Header>' +
            '    <s:Body>' +
            '        <u:' + params.action + ' xmlns:u="' + params.urn + '" />' +
            '    </s:Body>' +
            '</s:Envelope>';
        
            response = request.post(url, requestBody);
            var statusCode = request.getStatus();
            if (statusCode != 200) {
                throw 'Error ' + statusCode + ' sending authenticated request!';
            } else {
                return(XML.query(response, 'number(//NewForwardNumberOfEntries/text())'));
            }
        }
        

        Die Parameter "ip", "username" und "password" sollten klar sein.
        Was zusätzlich noch benötigt wird:
        "action" = "GetForwardNumberOfEntries"
        "url" = "/upnp/control/layer3forwarding"
        "urn" = "urn:dslforum-org:service:Layer3Forwarding:1"

        Jetzt werde ich nach und nach die Doku von AVM durchgehen, und sehen was da sinnvoll nutzbar ist.
        Das Ganze werde ich dann als Template für Zabbix veröffentlichen.
        Wie gesagt: Wer Vorschläge hat, darf die gerne äußern.

        Aktueller Zwischenstand:
        840cb744-a6b8-47c2-a467-1e6bae7c8a60-grafik.png

        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
        HmIP|ZigBee|Tasmota|Unifi
        Zabbix Certified Specialist
        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

        1 Reply Last reply
        2
        • CodierknechtC Online
          CodierknechtC Online
          Codierknecht
          Developer Most Active
          wrote on last edited by
          #30

          Here it is:

          https://github.com/DEV2DEV-DE/zabbix-templates/blob/main/zbx_template_fritzbox.xml

          04037cb0-8e7d-4c51-a4f1-9686c1042750-image.png

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          BananaJoeB 1 Reply Last reply
          1
          • CodierknechtC Codierknecht

            Here it is:

            https://github.com/DEV2DEV-DE/zabbix-templates/blob/main/zbx_template_fritzbox.xml

            04037cb0-8e7d-4c51-a4f1-9686c1042750-image.png

            BananaJoeB Offline
            BananaJoeB Offline
            BananaJoe
            Most Active
            wrote on last edited by
            #31

            @codierknecht argh, Version 6.4. Da müsste ich noch eben warten bis 7.0 raus ist ... ich setze in dem Bereich nur die LTS-Versionen ein.

            ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

            CodierknechtC 2 Replies Last reply
            0
            • BananaJoeB BananaJoe

              @codierknecht argh, Version 6.4. Da müsste ich noch eben warten bis 7.0 raus ist ... ich setze in dem Bereich nur die LTS-Versionen ein.

              CodierknechtC Online
              CodierknechtC Online
              Codierknecht
              Developer Most Active
              wrote on last edited by
              #32

              @bananajoe sagte in [gelöst] - Zabbix (FritzBox etc.):

              Version 6.4

              Lässt sich das unter 6.0 importieren, wenn man einfach im XML die Versionsnummer runterdreht?
              Oder hat sich zu 6.4 das Format maßgebend geändert?

              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
              HmIP|ZigBee|Tasmota|Unifi
              Zabbix Certified Specialist
              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

              BananaJoeB 1 Reply Last reply
              0
              • CodierknechtC Codierknecht

                @bananajoe sagte in [gelöst] - Zabbix (FritzBox etc.):

                Version 6.4

                Lässt sich das unter 6.0 importieren, wenn man einfach im XML die Versionsnummer runterdreht?
                Oder hat sich zu 6.4 das Format maßgebend geändert?

                BananaJoeB Offline
                BananaJoeB Offline
                BananaJoe
                Most Active
                wrote on last edited by
                #33

                @codierknecht Kollege testet gerade :-) Könnte reichen, ansonsten sagt er einem was ihn stört

                ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                1 Reply Last reply
                1
                • CodierknechtC Online
                  CodierknechtC Online
                  Codierknecht
                  Developer Most Active
                  wrote on last edited by
                  #34

                  Wenn man einmal weiß wie es geht ... wer einen Hammer hat, sieht eine Welt voller Nägel :grinning:

                  Mittlerweile sind's > 80 Items ;-)
                  Obwohl so eine Fritte eigentlich recht "unkommunikativ" ist. Kein SNMP, kein Telnet, kein SSH.

                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                  HmIP|ZigBee|Tasmota|Unifi
                  Zabbix Certified Specialist
                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                  1 Reply Last reply
                  0
                  • BananaJoeB BananaJoe

                    @codierknecht argh, Version 6.4. Da müsste ich noch eben warten bis 7.0 raus ist ... ich setze in dem Bereich nur die LTS-Versionen ein.

                    CodierknechtC Online
                    CodierknechtC Online
                    Codierknecht
                    Developer Most Active
                    wrote on last edited by
                    #35

                    @bananajoe sagte in [gelöst] - Zabbix (FritzBox etc.):

                    Da müsste ich noch eben warten bis 7.0 raus ist

                    Just for info:
                    7.0 LTS ist draußen ... :-D

                    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                    HmIP|ZigBee|Tasmota|Unifi
                    Zabbix Certified Specialist
                    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                    1 Reply Last reply
                    1
                    • BananaJoeB Offline
                      BananaJoeB Offline
                      BananaJoe
                      Most Active
                      wrote on last edited by
                      #36

                      Was ist neu in Zabbix 7.0?
                      https://www.youtube.com/watch?v=60Zy3bw-wOs

                      ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                      1 Reply Last reply
                      0
                      • arteckA Offline
                        arteckA Offline
                        arteck
                        Developer Most Active
                        wrote on last edited by
                        #37

                        die honeycomb find ich cool

                        zigbee hab ich, zwave auch, nuc's genauso und HA auch

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          schittl
                          wrote on last edited by schittl
                          #38

                          @Codierknecht

                          Vielen Dank für das Template funktioniert 1a. Nur eins was mir dabei aufgefallen ist. Hat man den PushService aktiviert bekommt man alle x-Sekunden eine Nachricht. Ich verwende upnp schon mit fritzinfluxdb (https://github.com/bb-Ricardo/fritzinfluxdb) auf die gleiche Weise nur da bekommt man nur 1x ne Mail bei der Erstanmeldung/Neustart. Sicherlich der Unterschied in der Programmiersprache ;)

                          Soll nur als Hinweis dienen und vielen Dank für deine Mühe.

                          de586c74-b145-4027-a654-7899d181d18c-image.png

                          HW: Lenovo M920q (Proxmox, ioBroker, RaspMatic & Z2M), QNAP (Docker, Influx), Arduino Mega 2560 R3 (I2C DS18B20 + LED)

                          SW: CT IoBroker, VM RaspMatic(v3.79.6.20241122)

                          CodierknechtC 1 Reply Last reply
                          0
                          • S schittl

                            @Codierknecht

                            Vielen Dank für das Template funktioniert 1a. Nur eins was mir dabei aufgefallen ist. Hat man den PushService aktiviert bekommt man alle x-Sekunden eine Nachricht. Ich verwende upnp schon mit fritzinfluxdb (https://github.com/bb-Ricardo/fritzinfluxdb) auf die gleiche Weise nur da bekommt man nur 1x ne Mail bei der Erstanmeldung/Neustart. Sicherlich der Unterschied in der Programmiersprache ;)

                            Soll nur als Hinweis dienen und vielen Dank für deine Mühe.

                            de586c74-b145-4027-a654-7899d181d18c-image.png

                            CodierknechtC Online
                            CodierknechtC Online
                            Codierknecht
                            Developer Most Active
                            wrote on last edited by
                            #39

                            @schittl sagte in [gelöst] - Zabbix (FritzBox etc.):

                            bekommt man alle x-Sekunden eine Nachricht

                            Das dürfte an Deiner Einstellung "Bei Anmeldungen von Apps ..." liegen.
                            Es wird ja - je nach eingestelltem Intervall der Items - immer wieder eine Anmeldung an der Fritte durchgeführt.

                            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                            HmIP|ZigBee|Tasmota|Unifi
                            Zabbix Certified Specialist
                            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                            S 1 Reply Last reply
                            0
                            • CodierknechtC Codierknecht

                              @schittl sagte in [gelöst] - Zabbix (FritzBox etc.):

                              bekommt man alle x-Sekunden eine Nachricht

                              Das dürfte an Deiner Einstellung "Bei Anmeldungen von Apps ..." liegen.
                              Es wird ja - je nach eingestelltem Intervall der Items - immer wieder eine Anmeldung an der Fritte durchgeführt.

                              S Offline
                              S Offline
                              schittl
                              wrote on last edited by schittl
                              #40

                              @codierknecht

                              Kleine Idee/Verbesserung:
                              Ist es möglich das man/Du im Template {HOST.IP} durch {HOST.HOST} ersetzt, dann würden im Dashboard nicht mehr "Unknown host" für die Fritte auftauchen ;)
                              Siehe Beispiel am Video icmp (https://www.youtube.com/watch?v=sHMmwL1q3Gc)

                              Ich habe das Template dahingehend schon angepasst. Falls gewünscht stelle ich es bereit. Wollte nur nicht einfach so reinstellen.

                              Wie gesagt funktioniert super das Template und soll nur als Hinweis/Anregung dienen. Ich bedanke mich abermals für das zur Verfügung stellen :+1:

                              HW: Lenovo M920q (Proxmox, ioBroker, RaspMatic & Z2M), QNAP (Docker, Influx), Arduino Mega 2560 R3 (I2C DS18B20 + LED)

                              SW: CT IoBroker, VM RaspMatic(v3.79.6.20241122)

                              BananaJoeB 1 Reply Last reply
                              1
                              • S schittl

                                @codierknecht

                                Kleine Idee/Verbesserung:
                                Ist es möglich das man/Du im Template {HOST.IP} durch {HOST.HOST} ersetzt, dann würden im Dashboard nicht mehr "Unknown host" für die Fritte auftauchen ;)
                                Siehe Beispiel am Video icmp (https://www.youtube.com/watch?v=sHMmwL1q3Gc)

                                Ich habe das Template dahingehend schon angepasst. Falls gewünscht stelle ich es bereit. Wollte nur nicht einfach so reinstellen.

                                Wie gesagt funktioniert super das Template und soll nur als Hinweis/Anregung dienen. Ich bedanke mich abermals für das zur Verfügung stellen :+1:

                                BananaJoeB Offline
                                BananaJoeB Offline
                                BananaJoe
                                Most Active
                                wrote on last edited by BananaJoe
                                #41

                                @schittl Also eigentlich sollte man bei den Items {HOST.CONN} verwenden - das ist die eingestellte Hostverbindung, entweder der DNS-Name oder die IP, je nach Auswahl.
                                Wenn der DNS dann konfiguriert und dessen Benutzung ausgewählt ist, nimmt er diesen

                                {HOST.HOST} wäre der Hostname, also was oben im ersten Feld der Hostkonfiguration steht. Das kann ein gültiger Hostname (aka NetBIOS) oder DNS-Name sein, muss aber nicht

                                ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                                1 Reply Last reply
                                0
                                • CodierknechtC Online
                                  CodierknechtC Online
                                  Codierknecht
                                  Developer Most Active
                                  wrote on last edited by
                                  #42

                                  Wenn Du das schon fertig hast ... mach einfach einen PullRequest.
                                  Alternativ wäre es auch möglich, die IP statt aus einem Interface (das ja zwangsläufig "not available" wird) über ein Host-Macro zu füttern.
                                  Die Idee mit {HOST.HOST} ist nicht verkehrt, könnte aber ebenfalls zu Verwirrungen führen, da ja am Host dann mit "Visible name" gearbeitet werden muss.

                                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                  HmIP|ZigBee|Tasmota|Unifi
                                  Zabbix Certified Specialist
                                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                  1 Reply Last reply
                                  0
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes


                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  581

                                  Online

                                  32.7k

                                  Users

                                  82.5k

                                  Topics

                                  1.3m

                                  Posts
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                  ioBroker Community 2014-2025
                                  logo
                                  • Login

                                  • Don't have an account? Register

                                  • Login or register to search.
                                  • First post
                                    Last post
                                  0
                                  • Home
                                  • Recent
                                  • Tags
                                  • Unread 0
                                  • Categories
                                  • Unreplied
                                  • Popular
                                  • GitHub
                                  • Docu
                                  • Hilfe