socat TCP-LISTEN und mehrere Clients, Daten werden geteilt und nicht dupliziert

09/11/2010 - 14:55 von Johann Maar | Report spam
Hallo,

ich versuche mit dem großartigen Universalnetzwerktool socat eine Art
TCP-Datenverteiler einzurichten.
Ein Skript sendet Output auf die Ausgabe und diese will ich mit socat
weiterverteilen an n Clients. Leider kommt nicht bei jedem Client
alles an, sondern die Ausgabe wird auf alle Clients aufgeteilt, sodass
jeder ein Stückchen bekommt. Das ist doof.

Server:
mysuperscript.sh | socat - TCP-LISTEN:4001,fork,reuseaddr

Clients:
socat TCP:localhost:4001 -
oder auch netcat (nc localhost 4001)

Ausgaben vom Server:
12:12:56
12:12:57
12:12:58
12:12:59

Ausgaben Client 1:
12:12:56
12:12:57

Ausgaben Client 2:
12:12:58
12:12:59

Gewünscht wàre aber, dass bei jedem Client alles ankommt.
Hat da jemand eine Idee?

Gruß,
Johann
 

Lesen sie die antworten

#1 Michael Meyer
09/11/2010 - 18:20 | Warnen spam
*** Johann Maar wrote:

mysuperscript.sh | socat - TCP-LISTEN:4001,fork,reuseaddr



socat TCP-LISTEN:4001,fork,reuseaddr EXEC:./mysuperscript.sh

Es wird dann allerdings für jeden fork von socat auch eine eigene
Instanz von mysuperscript.sh ausgeführt. Passt für deinen
Anwendungsfall vielleicht nicht ganz...

HTH

Micha

Ähnliche fragen