DSM 7.1 Seit Update auf 7.1 - IP-Konflikt durch Docker VPN macvlan-bridge

etofi

Benutzer
Mitglied seit
10. Jul 2021
Beiträge
6
Punkte für Reaktionen
0
Punkte
1
Hallo zusammen,

bis zum Update auf 7.1 hatte ich keine Probleme.
Ich setzte folgendes Script im Aufgabenplaner ein damit ich die Apps in meinem Docker Container auch über VPN erreichen kann.

Bash:
#!/bin/sh

if ip link | grep "macvlan-bridge" > /dev/null; then

    echo "Device macvlan-bridge existiert"

else

    echo "Device macvlan-bridge anlegen"
   
    ip link del macvlan-bridge
    sleep 2
    ip link add macvlan-bridge link eth0 type macvlan mode bridge
    sleep 2
    ip addr add 192.168.178.160/27 dev macvlan-bridge
    sleep 2
    ip link set macvlan-bridge up
    sleep 2
    ip route add 192.168.178.251/32 dev macvlan-bridge
   
fi

Leider erhalte ich jetzt von meiner Synology folgenden Fehler:
Bei der Schnittstelle macvlan-bridge auf DiskStation gab es durch [02:42:C0:A8:B2:A0] einen IP-Konflikt von [192.168.178.160]. Überprüfen Sie Ihre Netzwerkeinstellungen, um dieses Problem zu beheben.

Weiß jemand wie ich das wieder in den Griff kriege?

Grüße
Eric
 

Stationary

Benutzer
Sehr erfahren
Mitglied seit
13. Feb 2017
Beiträge
3.607
Punkte für Reaktionen
1.037
Punkte
194
Welches Gerät bei Dir hat denn die MAC 02:42:C0:A8:B2:A0?
 

etofi

Benutzer
Mitglied seit
10. Jul 2021
Beiträge
6
Punkte für Reaktionen
0
Punkte
1
So wie es aussieht ist das der Docker macvlan Adapter.
 
Zuletzt bearbeitet von einem Moderator:

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.114
Punkte
214
Ehrlich gesagt ist MacVlan nicht unbedingt das beste und ist/war schon immer ein spezieller Fall. Warum du MacVlan nutzen musst (wegen deiner Apps) verstehe ich nicht. Richte es normal als "Bridge" oder "Host" ein und nutzte ggf. den ReverseProxy für die Umleitung. Alles andere macht mehr Ärger als nutzen.

Ich hab keinerlei Probleme damit.
 

etofi

Benutzer
Mitglied seit
10. Jul 2021
Beiträge
6
Punkte für Reaktionen
0
Punkte
1
Leider habe ich Docker Apps die eine eigen IP Adresse im Netzwerk benötigen damit das Zusammenspiel mit anderen Geräten im Netzwerk funktioniert.
Wie hast Du so was dann umgesetzt?
 
Zuletzt bearbeitet von einem Moderator:

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.114
Punkte
214
Es kommt ja immer darauf an wie man es umsetzt. Wenn sich mehre Docker-Container unterhalten geht das einfach über den Namen, nicht über die IP.
Auch bietet der ReverseProxy die Möglichkeit etwas "um zu lenken".

Was jetzt dein Problem ist kann ich dir nicht sagen, da du kein Infos zu den Container erzählst. Grundsätzlich arbeitet Docker vom System abgekapselt - vergleichbar mit einer Sandbox. Das ist auch ja deren Vorteil und so gewollt.

Mit Docker-Apps meinst du Images/Container?
Wo liegt denn dein Problem? Um welche Software geht es?
Letzendlich muss man das System erst einmal verstehen, wenn man nur irgendwelchen Internet-Video-Tutorials folgt mag es zwar funktionieren aber ist das richtig?

Gib mehr Infos, denn schauen wir einmal weiter.
 

etofi

Benutzer
Mitglied seit
10. Jul 2021
Beiträge
6
Punkte für Reaktionen
0
Punkte
1
Also ich verwende mehrere Container (Apps) z.B. "CCU-Historian" benötigte eine eigene IP im Netzwerk.
Sonst klappt es nicht mit der Kommunikation zwischen Container und meiner CCU3 (Homematic).
Host und Bridge habe ich beide schon versucht - aber nur mit macvlan klappt die Verbindung.
Ähnlich ist es mit meinem "tvheadend" Container. Da klappt die Verbindung zu meinem Sat-IP-Umsetzer auch nur mit eigener IP.

Und eigene IP geht meines Wissens leider nur mit macvlan - oder?
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.114
Punkte
214
Und wo ist jetzt dein Problem?
Gehe ich richtig das du dieses Image meinst?

In der Dazu gehörigen Anleitung kannst du die entsprechenden Ports sehen:
Code:
  80     TCP     Web-GUI Port
2098     TCP     Xml RPC Port
2099     TCP     Bin RPC Port
8082     TCP     Database Web-GUI Port
9092     TCP     Database TCP Port
5435     TCP     Database PostgreSQL Port

Dabei interessant ist hauptsächlich der Port 80, welcher bereits durch die DS belegt ist. und die Database. Letzte kommunizieren reibungslos im Bridgenetzwerk untereinander und können komplett ausgeklammert werden. Es ist auch möglich für jede Anwendung ein Bridgenetzwerk zu errichten, damit nicht alle Container die Kommunikation lauschen können. Das ist aber dann eine andere Baustelle.

Ich würde alle Ports nach außen mappen die du benötigst. Bei Ports welche schon belegt sind musst du halt auf einen anderen ausweichen. Das kannst du später aber mit dem ReverseProxy wieder hin biegen oder gleich eine Adresse zuweisen.

Zu diesem Image benötigst du Postgres, welches du auch bestimmt in Docker installiert hast? Dieses muss sich natürlich im selben Netzwerk befinden wie "CCU-Historian" um mit dem Namen zu kommunizieren. Es geht natürlich auch über den Port, denn wird es eben nur nach draußen geschleift und wieder nach innen anstatt direkt zu kommunizieren.
 

etofi

Benutzer
Mitglied seit
10. Jul 2021
Beiträge
6
Punkte für Reaktionen
0
Punkte
1
Also wenn ich den Teil hier weg lasse funktioniert das wie bisher.
Code:
ip route add 192.168.178.251/32 dev macvlan-bridge
Scheint das dies bei 7.1 nicht mehr benötigt wird.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.114
Punkte
214
MacVlan ist eh nicht die optimal Lösung. Dabei heist es nicht das es nicht funktioniert - kann aber Probleme verursachen. Ich verwende die meisten Container als "Bridge" - wenn es nicht anders geht als "Host" und gut ist.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat