Forum: PC Hard- und Software [S] Software Serial LAN Server


von Lukas (Gast)


Lesenswert?

Hallo,

gibt es so eine Software, oder eine Kombination von verschiedener 
Software.


Daten kommen per LAN an einem Linux PC an, dieser soll nun einen 
"Serial-Server" bereitstellen.

Ein Windows PC soll nun einen Virtuellen COM-Port bereitstellen welcher 
sich mit dem Linux PC verbindet.

Also so ähnlich wie es diese COM Server in Hardware gibt.

von Gerd E. (robberknight)


Lesenswert?

Schau Dir mal socat an. Damit bekommst Du auf jeden Fall auf der 
Linux-Seite die Verbindung zwischen eingehender TCP-Socket-Verbindung 
und der seriellen Schnittstelle hin.

Auf der Windows-Seite einen virtuellen Com-Port zu erstellen geht mit 
dem Windows-Build von socat vermutlich auch irgendwie. Aber für Windows 
bin ich kein Experte.

von Lukas (Gast)


Lesenswert?

Im Moment schicke ich die Daten direkt an den Windows PC (über den 
Linux-PC per Forwarding). Auf dem Windows PC empfange ich die Daten mit 
ncat und leite sie an einen Virtuellen Serialport weiter (com0com). Die 
Windows Software empfängt nun am anderen Viruellen Comport.

Ist eben etwas unflexibel wenn es auf einem anderen PC auch gelegentlich 
laufen soll.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

com0com enthält eine Komponente namens com2tcp; von com0com gibt es auch 
signierte Treiber (nötig für den Betrieb unter neueren 
Windows-Versionen).

http://com0com.cvs.sourceforge.net/viewvc/com0com/com2tcp/ReadMe.txt?revision=RELEASED

http://com0com.sourceforge.net/

Die auf dieser Seite eingeblendete Reklame für Produkte der Firma Eltima 
kann man geflissentlich ignorieren.

Und hier gibt es die signierten Treiber.

http://pete.akeo.ie/2011/07/com0com-signed-drivers.html

Der Beitrag selbst ist zwar von 2011, die dort zu findenden Treiber sind 
aber vom Juni 2016.

von Lukas (Gast)


Lesenswert?

Ah, sehr schön.
Die Signierten Treiber verwende ich schon.

Dank deinem Tipp hab ich hier noch eine aktualisierte Version von 
com2tcp gefunden.
https://github.com/Raggles/com0com/tree/master/com2tcp

Jetzt bräuchte ich noch etwas für die Linux-Server Seite :)

von Gerd E. (robberknight)


Lesenswert?

Lukas schrieb:
> Jetzt bräuchte ich noch etwas für die Linux-Server Seite :)

wie schon oben geschrieben: diesen Teil kannst Du mit socat ganz leicht 
lösen.

von Lukas (Gast)


Lesenswert?

Jein, an dem Linux PC ist keine Serielle Schnittstelle, am Linux PC 
kommen Daten auf einem TCP Port an, und er sollte nun die Daten über 
einen Service an einem anderen Port anbieten.

Ich konnte aus den Quellen mit VS 2017 eine com2tcp.exe erstellen, soll 
ich diese hier für andere zur Verfügung stellen?

von Gerd E. (robberknight)


Lesenswert?

Lukas schrieb:
> Jein, an dem Linux PC ist keine Serielle Schnittstelle, am Linux PC
> kommen Daten auf einem TCP Port an, und er sollte nun die Daten über
> einen Service an einem anderen Port anbieten.

Das kann socat auch.

von Georg (Gast)


Lesenswert?

Lukas schrieb:
> Also so ähnlich wie es diese COM Server in Hardware gibt

Das hilft dir zwar nicht weiter, aber sowas wie XPort ist nichts anderes 
als ein miniaturisiertes Unix-System mit Ethernet-Anschluss und einer 
seriellen Schnittstelle. Nur viel kleiner als ein Linux PC oder ein 
Raspi.

Georg

von Lukas (Gast)


Lesenswert?

Bin immer noch am testen.

Kann ich unter Windows den Datenstrom "verdoppeln"?

Daten kommen am PC an und werden mit ncat -l port empfangen und mit > 
com3: umgeleitet.
Zusätzlich möchte ich die Daten jedoch auch noch in eine Datei 
speichern. Kann der Strom gespiegelt werden?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Laut ncat-manpage gibt es die Option -o.
1
 -o, --output <filename>    Dump session data to a file

Probier' das mal aus.

von Lukas (Gast)


Lesenswert?

Super, das klappt. Ich hatte die Option schonmal gesehen dann aber nicht 
getestet weil ich mir gedacht habe das die Daten dann wieder nur in der 
Datei landen. Das ist aber nicht so die kommen weiterhin an der Konsole 
an und können doch weiterhin mit > umgeleitet werden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.