
Verfügt Windows über ein Äquivalent zum Linux Network Namespace?
Ich möchte eine neue Schnittstelle erstellen und diese Schnittstelle nur für bestimmte Anwendungen zugänglich machen. Diese Schnittstelle würde nicht auf den Standard-Windows-Ports (139, 445 usw.) lauschen.
Im Idealfall könnte die Anwendung auch die anderen Schnittstellen nicht nutzen, aber das ist für meinen Anwendungsfall weniger wichtig.
Am wichtigsten ist, dass die Schnittstellen nicht auf Betriebssystemebene miteinander kommunizieren würden. Sie müssten tatsächlich Pakete an ein physisches/virtuelles Netzwerk senden, wenn sie miteinander kommunizieren wollten. Die IP-Bereiche könnten sich sogar überschneiden (natürlich könnten sie dann nicht direkt miteinander kommunizieren).
Antwort1
Unterm Strich ist die Antwort ein klares Nein.
Windows verfügt nicht über etwas, das den Linux-Namespaces auch nur annähernd entspricht.
Das Nächste, was mir persönlich einfällt (vielleicht gibt es bessere Antworten da draußen), sindJob-Objekteaber mir fällt keine klare Möglichkeit ein, das zu tun, was Sie wollen. Vielleicht ACLs? Ich empfehle keinen der beiden Ansätze, aber das sind die beiden Dinge, die mir einfallen, wenn es darum geht, bestimmte Ressourcen auf bestimmte Prozesse zu beschränken.
Das Problem besteht darin, dass Netzwerkschnittstellen im Betriebssystem auf einer niedrigen Ebene gehandhabt werden und da Windows im Kernel keine Möglichkeit bietet, den Zugriff auf einzelne Benutzer oder Anwendungen einzeln zu steuern, ist mir nicht klar, wie man dies ohne einen benutzerdefinierten Treiber irgendeiner Art generell erreichen könnte.