Guten Morgen!
Ich betreibe Ubuntu Server an einem Odroid-C2 und stehe vor folgender Herausforderung:
Der Odroid ist Teil eines Systems, das in einem Lichtsteuerungsnetzwerk hängt, über das das Artnet-Protokoll läuft (UDP-Packets uni- und broadcast). IP-Konfiguration für Artnet ist standardmäßig 2.X.X.X/8 oder 10.X.X.X/8 Der Odroid hängt mit eth0 an einem Managed Switch, der 802.1Q konfiguriert hat:
Port 1: externes Lichtnetzwerk, VID 11, PVID 11, untagged
Port 2: internes Lichtnetzwerk, VID 12, PVID 12, untagged
Port 3: Odroid, VID 11+12, tagged
Auf dem Odroid selbst habe ich vlan installiert und in /etc/network/interfaces definiert:
auto eth0.11 iface eth0.11 inet static address 2.0.0.51 netmask 255.0.0.0
auto eth0.12 iface eth0.12 inet static address 2.0.0.51 netmask 255.0.0.0
Folgendes soll realisiert werden:
- Kein Netzwerkverkehr zwischen Port 1 und Port 2 - Odroid soll von/zu beiden VLANs getrennt senden und empfangen können. (Broadcast und Unicast) - IP sollte für beide VLANs entweder dieselbe IP haben oder zumindest im selben Subnetz sein. (im oberen Fall also zb. 2.1.1.51)
Wenn also ein UDP-Packet hereinkommt, möchte ich wissen von welchem Port. Wenn ich ein Packet sende, möchte ich auswählen auf welchem VLAN.
Als Software läuft ein Java-Programm. Mittels DatagramSocket kann ich mich ja an ein bestimmtes Netzwerkinterface binden.
Bis jetzt habe ich es nicht geschafft den Odroid anzupingen, wenn beide IPs gleich oder im selben Subnetz sind. Es funktioniert nur mit IPs in verschiedenen Subnetzen. Ist das irgendwie möglich? Oder gibt es eine andere Lösung für mein Problem?