Eingehende Netzwerkpakete manipulieren



  • Hallo Zusammen

    Ich habe ein kleines Problem. In der Firma haben wir spezielle Hardware-Module mit integriertem VNC Server. Leider stellen die VNC Server die Farben nicht korrekt dar. Jetzt hab ich mich mal über das RFB-Protokoll schlau gemacht und ich denke mit einer Clientseitigen Lösung wäre es möglich die Farben nach wunsch anzupassen.

    Nur muss ich dann Pakete, welche vom Netzwerk hineinkommen filtern und bei Bedarf eben verändern. Wie mach ich das in C++? Ich habe da wirklich keine Ahung von. Kann mir da WinPcap weiterhelfen?

    Grüsse



  • C++ kann das garnicht. Netzwerkfunktionalität, geschweige denn Treiberzugriff musst Du mit speziellen APIs machen, die dir das Betriebssystem zur Verfügung stellt auf dem du arbeitest (in deinem Fall wohl Windows).

    Den Versuch mit WinPcap halte ich für überdimensioniert (viel zu aufwändig, jeder Client muss den Treiber installieren). Ein einfacher SOCKS4 Server sollte es tun.
    Du musst VNC dann halt sagen, dass es den SOCKS-Server zu benutzen hat. Der leitet dann an den entsprechenden VNC-Server weiter und kann sich nebenbei die Pakete anschauen.

    Die VNC-Clients müssen sich dann eben nur mit nem SOCKS-Server unterhalten können. Können aber eigentlich recht viele Programme.



  • Aber dann muss ich ja ebenfalls auf jedem Client einen Socks Server installieren oder?

    Auf der Maschine auf dem der VNC-Server läuft kann ich nichts installieren. Läuft so oder so schon am Anschlag.



  • Nein, du musst nur einen Socks-Server installieren, der die Packete korrigiert und über diesen müssen die Clients auf den VNC-Server zugreifen.

    (Keine Möglichkeit den VNC-Server upzudaten? Die clientseitige Lösung beseitigt nicht wirklich das Prob.)



  • Gut danke. Probier ich doch gleich mal aus 🙂

    Leider hab ich keine möglichkeit den VNC-Server zu updaten. Das ganze ist ein eigenes Betriebssystem von einer Drittfirma entwickelt, in diesem Betriebssystem ist halt auch ein VNC Server integriert und in deren Quellcode rumzufummeln hab ich keine Lust 😉

    Danke


Anmelden zum Antworten