Ankündigung

Einklappen
Keine Ankündigung bisher.

KNXD als Docker auf Synology

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

    KNXD als Docker auf Synology

    Hallo,
    ich will nun endlich mal ein Gateway aufsetzen dass auch weitere Anpassungen im meiner Landschaft verkraftet.
    Da ich gerade dabei bin mich in Docker einzuarbeiten (für IO Brocker) bin ich gleich wieder auf ein altes Problem gestoßen …

    Aktuell nutze ich folgende Geräte die Mit Tunneling/Routing arbeiten:
    Gira HS – routing
    ETS geht nur mit Tunnel weil in einem andern VLAN
    RaspPi mit Smathome.Py als Gateways zu andere Bussen (DMX/MODBUS) mit KNXD routing -> will ich mit IO Broker ablösen

    Nun kommt IOBroker.knx dazu der nach einem Tunnel verlangt
    Mein oller Eibmarkt Router N00402 kann nur einen Tunnel + Routing…
    Also neuen Router kaufen oder was mit KNXD basteln…
    Idee war nun eine eigene KNXD Instanz als Docker laufen zu lassen die dann die bis zu 8 Tunnel anbietet...
    Die besten Ergebnisse hatte ich mit den Containern von foxi352 und andrevs, aber es gelingt mir nicht auf diese mittels Tunnel zuzugreifen…
    Liegt es am Container?

    Ich habe nur eine Linie 1.1 und der Router N00402 liegt auf 1.1.0 / 192.168.15.2
    Die auf dem Pi funktionierende Config:
    Code:
    [A.unix]
    Code:
    path = /tmp/eib
    server = knxd_unix
    systemd-ignore = false
    [B.ip]
    driver = ip
    [main]
    addr = 1.1.0
    client-addrs= 1.1.151:1
    cache = D.cache
    connections = A.unix,B.ip
    systemd = systemd


    Meine neue Konfig:

    Container liegt mittel MACVLAN im selben Netz wie der Router, starten des KNXD klappt aber ich komme nicht drauf… wahlweise mit ip und ipt versucht ohne Unterschied
    Code:
    [A.tcp]
    server = knxd_tcp
    systemd-ignore = false
    
    [B.ipt]
    driver = ipt
    filters = C.pace
    ip-address = 192.168.15.2
    
    [B.ip]
    driver = ip
    
    [C.pace]
    delay = 80
    filter = pace
    
    [E.debug]
    error-level = 0x9
    trace-mask = 0xfc
    
    [main]
    addr = 1.1.0
    debug = E.debug
    client-addrs= 1.1.161:1
    cache = D.cache
    connections = A.tcp,B.ip
    background = false
    Log:
    Code:
    Layer 6 [ 9:B.ip/Conn 846.934] is OK
    Layer 6 [ 4:D.cache/Conn 846.934] is OK
    Layer 6 [ 1:main 846.934] OK
    Layer 6 [ 2:main/L 846.934] OK L
    Layer 6 [ 4:D.cache/Conn 847.003] sending, send_more clear
    Layer 6 [ 4:D.cache/Conn 847.003] sendNext called, send_more set
    Layer 6 [ 1:main 847.003] sending set
    Layer 6 [ 6:A.tcp/inet 847.003] is OK
    Layer 6 [ 9:B.ip/Conn 847.003] is OK
    Layer 6 [ 4:D.cache/Conn 847.003] is OK
    Layer 6 [ 1:main 847.003] OK
    Layer 6 [ 2:main/L 847.003] OK L
    Hat jemand eine Idee wie ich weiterkomme? Danke!
    Habe ich irgendwo einen Denkfehler?


    Viele Grüße und nen schönen Sonntag...
    Boardy

    #2
    Ich musste immer net=host nutzen.

    Edit:
    Code:
    cache = D.cache
    Geht das ohne
    Code:
    [D.cache]
    ..
    ?

    Kommentar


      #3
      Net= Host wäre aber total doof - weil natürlich das NAS nicht im VLAN des Smarthome liegt - im Host Net liegt aber eigentlich nichts außer dem NAS auch keine anderen Container...


      [D.cache] .. : Ja hat mich auch gewundert, aber es geht wohl beim PI - ich kann es aber mal rausnehmen...
      Deinen Container hatte ich mir auch angesehen - aber du nutzt die neue ini noch nicht - ich wollt enicht auf die alte Comandozeile zurück...

      Kommentar


        #4
        Kommandozeile-nach-.INI ist einfach, "/usr/lib/knxd_args alle-Argumente-der-knxd-Welt" liefert dir die äquivalente .INI-Datei. Garantiert (macht der knxd intern auch nicht anders).
        DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

        Kommentar


          #5
          Das Bezog sich nur auf den Docker von Henfri - Ja weiß ich - ich hab aber doch die Laufende Ini des PI als Basis und müsste zurück zur Kommandozeile - macht aber nur Sinn wenn jemand einen Docker container hat der besser funktioniert und dafür Kommandozeile benötigen würde...

          Kommentar


            #6
            Probier doch Mal mit net=Host.
            Hilft den Fehler einzugrenzen

            Kommentar


              #7
              Probier doch Mal mit net=Host.
              Ja hab ich - ohne dass ich eien Änderung feststellen konnte - was mir einfällt ich hatte bezüglich docker gelesen dass die Container untereinander nicht über die MACVLAN Adressen kommunizieren können sondern nur über den Bridge Mode - damit käme IOBROKER.knx nicht mehr an den EIBD - aber die ETS müsste wenigstens gehen... Vernünftige Logs alla systemd bekomme ich leider auch nicht zum laufen - nur den debug output...

              Aber wenn das in die falsche Richtung geht würde wohl nur helfen, dass Iobrocker.knx selbst Tunnel bereitstellt... ?
              oder ich den Raspi sobald er frei ist nur dafür laufen lasse :-(

              Kommentar


                #8
                Keine Ahnung...
                ohne das VLAN und MACVLAN Gedöns funktioniert bei mir das, was du -glaube ich- vor hast.

                Kommentar

                Lädt...
                X