FHEM2FHEM über OpenVPN: ständige Reconnects

Begonnen von heikoh81, 31 März 2018, 09:28:42

Vorheriges Thema - Nächstes Thema

heikoh81

Hallo zusammen,

ich habe folgende Netzwerk-Topografie, über OpenVPN verbunden:

Standort 1: 192.168.178.0/24
FHEM-Master: 192.168.178.230

Standort 2: 192.168.179.0/24
FHEM-Slave: 192.168.179.20

Standort 3: Vserver als OpenVPN-Relay: 11.22.33.44 (IP ist fiktiv)
FHEM fürs Logging

FHEM2FHEM zw. Standort 1 & Standort 2 funktioniert.
FHEM auf dem VServer ist bislang über FHEM2FHEM über eine öffentliche Verbindung (mit Portfreigabe) zu Standort 1 verbunden.
Das funktioniert alles problemlos.

Da ich nun eine vollständige OpenVPN-Verbindung zwischen allen Standorten habe, dachte ich, auch die Verbindung des Vserver-FHEM zu Standort 1 umstellen zu können.
Dies klappt aber leider nicht.

Auf dem FHEM-Master habe ich den Port 7074 extra für diesen Versuchszwech eingerichtet, somit greift keine andere Anwendung auf den Port zu.

define telnetPortMobil telnet 7074 global
define allowed_telnetPortMobil allowed
attr allowed_telnetPortMobil validFor telnetPortMobil


Auf dem VServer-FHEM:
define FHEMFasVserver FHEM2FHEM 192.168.178.230:7074 LOG:.*
Performance-Probleme durch :.* hatte ich bislang keine.

Dafür habe dies im Log:

2018.03.30 21:51:11 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:11 1: 192.168.178.230:7074 disconnected, waiting to reappear
2018.03.30 21:51:16 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:16 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:16 1: 192.168.178.230:7074 disconnected, waiting to reappear
2018.03.30 21:51:21 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:21 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:21 1: 192.168.178.230:7074 disconnected, waiting to reappear
2018.03.30 21:51:26 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:26 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:26 1: 192.168.178.230:7074 disconnected, waiting to reappear
2018.03.30 21:51:31 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:31 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:31 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:31 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:31 1: 192.168.178.230:7074 disconnected, waiting to reappear
2018.03.30 21:51:36 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:36 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:36 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:36 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:37 1: 192.168.178.230:7074 disconnected, waiting to reappear
2018.03.30 21:51:42 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)
2018.03.30 21:51:42 1: FHEM2FHEM 192.168.178.230:7074 reappeared (FHEMFasVserver)


Zunächst habe ich auf dem VServer ausgeführt:

/sbin/ip route add 192.168.178.0/24 dev tun0


Danach ergibt "route -n":

root@www:/# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.8.0.2        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
192.168.178.0   10.8.0.2        255.255.255.0   UG    0      0        0 tun0
10.8.0.0        10.8.0.2        255.255.255.0   UG    0      0        0 tun0
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 venet0


So lange, wie dieser Route-Eintrag auf dem VServer vorhanden ist, funktioniert übrigens auch FHEM2FHEM über die öffentliche Verbindung nicht mehr!


ifconfig auf dem VServer liefert:
(die externe IP ist bei venet0:0)
root@www:~# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:1672868 errors:0 dropped:0 overruns:0 frame:0
TX packets:1672868 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:185507387 (176.9 MiB) TX bytes:185507387 (176.9 MiB)

tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:3940 errors:0 dropped:0 overruns:0 frame:0
TX packets:4035 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:732792 (715.6 KiB) TX bytes:2990075 (2.8 MiB)

venet0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:127.0.0.2 P-t-P:127.0.0.2 Bcast:0.0.0.0 Mask:255.255.255.255
UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
RX packets:218223 errors:0 dropped:0 overruns:0 frame:0
TX packets:199462 errors:0 dropped:2 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:112791383 (107.5 MiB) TX bytes:54531605 (52.0 MiB)

venet0:0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:11.22.33.44 P-t-P:11.22.33.44 Bcast:11.22.33.44 Mask:255.255.255.255
UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1


Wo ist mein Denkfehler?

Vielen Dank für eure Hilfe,
viele Grüße,

Heiko

UweUwe

Hallo Heiko,
bis du hier weitergekommen. Ich will auch meine FHEM Instanzen über VPN verbinden.

heikoh81

Ist denn bei dir auch ein VServer dazwischen? Das war das eigentlich komlizierte daran. Lösung war, dass OpenVPN auf dem VServer noch per Skript Routen zu den beiden Remote-Netzen hinzufügt, damit diese miteinander kommunizieren können.

Bei meiner zuerst aufgesetzten reinen Kopplung zwischen beiden Subnetzen war das kein Problem, weil OpenVPN bei Verbindungsaufbau die Routen eigentlich automatisch setzt.

Viele Grüße,
Heiko