Wenn der Historian auf einem Rechner läuft, der mehrere IP-Adressen hat, und mehrere Zentralen abfragt, die über diese unterschiedlichen Netze erreichbar sind, kommt bei allen abzufragenden Geräten, die nicht in dem Subnetz liegen, dessen IP der Historian verwendet, zu einem "XmlRpc transport error" (in /var/log/messages im jeweiligen Gerät).
Beispiel: Ein RaspberryMatic im lokalen Netz und ein abgesetzter über ein WireGuard-VPN.
Grund: Der Historian verwendet bei allen Geräten immer die Adresse, die unter devices.historianAddress eingestellt wurde (oder die er selbst ermittelt hat), selbst dann, wenn die IP der abzufragenden Geräte (devices.device1.address, devices.device2.addressusw.) nicht im gleichen Subnetz liegen.
Die abgefragten Geräte erhalten zwar die XmlRpc-Abfrage, aber da diese immer die fest eingestellte IP-Adresse des Historian verwendet, die in einem anderen Subnetz liegen kann (in N-1 der Fälle), kann es nicht antworten. (Der Workaround ist eine fest Route im abgefragten Gerät zum Historian über das bekannte Subnetz).
Sinnvoller wäre es (und das ist meine Anregung), die XmlRpc-Abfrage "subnetz-kompatibel" zu machen, indem der Historian die Abfrage mit seiner IP-Adresse im jeweiligen Subnetz erstellt, z.B. mit Optionen wie devices.device1.historianAddress und devices.device2.historianAddress. Damit weiß das angesprochene Gerät, wie es seine Nachricht zurücksenden kann.
Wenn der Historian auf einem Rechner läuft, der mehrere IP-Adressen hat, und mehrere Zentralen abfragt, die über diese unterschiedlichen Netze erreichbar sind, kommt bei allen abzufragenden Geräten, die nicht in dem Subnetz liegen, dessen IP der Historian verwendet, zu einem "XmlRpc transport error" (in
/var/log/messages
im jeweiligen Gerät).Beispiel: Ein RaspberryMatic im lokalen Netz und ein abgesetzter über ein WireGuard-VPN.
Grund: Der Historian verwendet bei allen Geräten immer die Adresse, die unter
devices.historianAddress
eingestellt wurde (oder die er selbst ermittelt hat), selbst dann, wenn die IP der abzufragenden Geräte (devices.device1.address
,devices.device2.address
usw.) nicht im gleichen Subnetz liegen.Die abgefragten Geräte erhalten zwar die XmlRpc-Abfrage, aber da diese immer die fest eingestellte IP-Adresse des Historian verwendet, die in einem anderen Subnetz liegen kann (in N-1 der Fälle), kann es nicht antworten. (Der Workaround ist eine fest Route im abgefragten Gerät zum Historian über das bekannte Subnetz).
Sinnvoller wäre es (und das ist meine Anregung), die XmlRpc-Abfrage "subnetz-kompatibel" zu machen, indem der Historian die Abfrage mit seiner IP-Adresse im jeweiligen Subnetz erstellt, z.B. mit Optionen wie
devices.device1.historianAddress
unddevices.device2.historianAddress
. Damit weiß das angesprochene Gerät, wie es seine Nachricht zurücksenden kann.Verwendete Version: CCU-Historian V3.3.0