Bob.Dig schrieb:
Das ist wenig hilfreich. Sollen wir jetzt antworten, dass es auch "diverse" Lösungen gibt? Linux: PBR, Windows: ForceBindIP.
Wenn du aber keine Details lieferst worum es überhaupt geht, kann man bestenfalls raten und das geht dann im worst case vollkommen am Thema vorbei, weil man gar nicht weiß was du vorhast...
Grundsätzlich ist es so, dass beim Programmieren von Netzwerkanwendungen bestimmte Funktionsaufrufe an das Betriebssystem gestellt werden.
Das Öffnen eines Ports - explizit auf einer bestimmten IP des Systems oder implizit auf allen IPs
Das Abschicken eines Pakets an ein Ziel - explizit von einer bestimmten Quell-IP oder implizit durch das OS entschieden.
Wenn eine Server-Anwendung nicht vorsieht, durch Konfiguration die IP des Servers einzuschränken - also so, dass der Dienst nur auf LAN1 verfügbar ist, aber nicht auf LAN2 - dann kann man das im Prinzip nur über die Firewall des Betriebssystems auf den unerwünschten Ports blocken. Hört der Service hingegen nur auf einer IP, man möchte ihn aber auf der anderen IP auch verfügbar machen, muss man dies über einen Proxy-Service, o.ä. aktiv so umbiegen, dass die Pakete trotzdem ihr Ziel finden.
Wenn eine Client-Anwendung nicht vorsieht, durch Konfiguration die Quell-IP bzw. das Absender-Interface auszuwählen, wird das Pakete stur an das OS durchgereicht und dort wird anhand der Routingtabelle entschieden über welches Interface bzw. Gateway das Paket rausgeht. Je nach OS stehen einem dazu verschiedene Möglichkeiten zur Verfügung. Unter Linux ist es am einfachsten, weil Linux PBR beherrscht, Policy Based Routing. Das heißt, dass man der Routing-Engine explizit mitteilen kann, dass bestimmte Pakete, die einem Matching entsprechen (zB ein bestimmter Port, eine bestimmte Quelle, etc) explizit
anders geroutet werden sollen. Windows kann kein PBR. Hier muss man sich dann Zusatztools wie ForceBindIP bedienen. Diese Tools schalten sich zwischen die Anwendung und Windows und fangen sämtliche Netzwerkaufrufe ab und biegen sie aktiv um. Übergibt die Anwendug also ein Paket ohne Angabe der Quelle an Windows, müsste normalerweise Windows entscheiden von wo das Paket abgeschickt wird. ForceBindIP schaltet sich dazwischen, fängt das Paket ab und sagt Windows dann explizit, dass das Paket über Schnittstelle xy rausgehen soll.