Login
Newsletter
Mo, 9. Februar 2004, 17:36

netcat, das »TCP/IP swiss army knife«

Gelegentlich kommt es vor, dass man zwar vernetzte Rechner hat, doch leider keine Tools, um Dateien transferieren; es reicht, wenn einer netcat installiert hat.

Chat

Netcat eignet sich nicht ganz so toll für einen Chat, aber zum Einstieg ist es allemal ganz gut.

Auf Rechner A startet man netcat so:

nc -l -p 1234

Auf Rechner B so:

nc <IP_RECHNER_A> 1234

(alternativ kann man auch mit Telnet die Verbindung herstellen).

Wie gesagt, ist es kein toller Chat, aber vielleicht mal zu gebrauchen.

Filetransfer

Eine Datei verschicken:

Auf Rechner A:

nc -l -p 1234 -q 1 < <DATEINAME>

Auf Rechner B:

nc <IP_RECHNER_A> 1234 > <DATEINAME>

Das -q 1 ist dafür da, dass netcat sich beendet, sobald das Ende der Datei erreicht ist.

Hier gibt es auch Alternativen. Z.B. kann man sich einfach mit einem Browser (Firebird, IE gestestet, Lynx macht Probleme) auf Rechner A mit dem angegebenen Port verbinden. Mag sein, dass der Empfänger auch Telnet nutzen kann, aber das habe ich (noch) nicht hinbekommen.

Dies ist aber nicht auf einzelne Dateien beschränkt:

Auf Rechner A:

tar c <DATEINAME>... | nc -l -p 1234 -q 1

Auf Rechner B:

nc <IP_RECHNER_A> 1234 | tar x

Optional kann man natürlich auch z oder j bei den tar-Optionen anhängen, damit es noch etwas schneller geht.

Wie so langsam ersichtlich ist, ist netcat wirklich ein feines Tool. Aber das Sahnehäubchen kommt noch:

Streaming mit mplayer

Auf Rechner A:

nc -l -p 1234 -q 1 < <WAS_GESTREAMT_WERDEN_SOLL>

Auf Rechner B:

nc <IP_RECHNER_A> 1234 | mplayer -

Die Option - von mplayer sorgt dafür, dass mplayer den Input aus der Standardeingabe nimmt.

Da ihr nun einen Ansatz habt, wünsche ich euch allen nun viel Spass beim Ausprobieren.

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten