PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : daten auf port in datei schreiben



Rotzbuab
17.01.03, 09:44
Hallo zusammen,

habe folgenden Wunsch in die Tat umzusetzen:

Es werden von meiner Telefon-Anlage Daten an meinen Linux-Server auf dem Port X geschickt. Jetzt möchte ich hergehen und alles was auf diesem Port reinkommt in eine Datei schreiben. Wie kann ich das bewerkstelligen ??

danke schonmal für die Hilfe.

Jasper
17.01.03, 10:31
Original geschrieben von Rotzbuab

habe folgenden Wunsch in die Tat umzusetzen:

Es werden von meiner Telefon-Anlage Daten an meinen Linux-Server auf dem Port X geschickt. Jetzt möchte ich hergehen und alles was auf diesem Port reinkommt in eine Datei schreiben. Wie kann ich das bewerkstelligen ??


mit 'nc'.

-j

Rotzbuab
17.01.03, 19:16
danke für die rasche antwort... aber was soll nc denn sein :confused:

Jasper
20.01.03, 09:14
Original geschrieben von Rotzbuab
danke für die rasche antwort... aber was soll nc denn sein :confused:

ein programm namens 'netcat'. siehe http://www.atstake.com/research/tools/network_utilities/

-j

Rotzbuab
03.02.03, 15:25
Original geschrieben von Jasper
ein programm namens 'netcat'. siehe http://www.atstake.com/research/tools/network_utilities/

-j

ok - das tool hab ich gefunden aber wie stell ich das an, das er alles auf port x in datei z schreibt ??

HangLoose
03.02.03, 17:58
@Jasper

nicht schlecht das tool, kannte ich noch gar nicht. :)

@Rotzbuab

mal kurz zur arbeitsweise von dem tool. angenommen ich möchte von rechner a etwas nach rechner b kopieren.

auf rechner b startest du nc folgendermaßen

nc -l -p 1234 >newfile

-l <== listen mode
-p <== local port, in dem fall 1234
>newfile <== schreibt den *traffic* der auf port 1234 reinkommt in das file <newfile>

auf rechner a startest du mit folgendem befehl

nc destination 1234 <origfile

destination <== entweder die ip oder den namen vom zielhost
1234 <== hier wieder der port 1234
<origfile <== file was übertragen werden soll

wenn du jetzt beikommst und mittels einem script dafür sorgst, das deine telefonanlage seine daten an nc übergibt, dürfte deinem vorhaben nichts im weg stehen. auf dem zielsystem muss nc natürlich, am besten im hintergrund, auf reinkommende daten warten.


Gruß HL

tmgb
10.02.03, 14:55
Original geschrieben von HangLoose
@Jasper

nicht schlecht das tool, kannte ich noch gar nicht. :)

@Rotzbuab

mal kurz zur arbeitsweise von dem tool. angenommen ich möchte von rechner a etwas nach rechner b kopieren.

auf rechner b startest du nc folgendermaßen

nc -l -p 1234 >newfile

-l <== listen mode
-p <== local port, in dem fall 1234
>newfile <== schreibt den *traffic* der auf port 1234 reinkommt in das file <newfile>

auf rechner a startest du mit folgendem befehl

nc destination 1234 <origfile

destination <== entweder die ip oder den namen vom zielhost
1234 <== hier wieder der port 1234
<origfile <== file was übertragen werden soll

wenn du jetzt beikommst und mittels einem script dafür sorgst, das deine telefonanlage seine daten an nc übergibt, dürfte deinem vorhaben nichts im weg stehen. auf dem zielsystem muss nc natürlich, am besten im hintergrund, auf reinkommende daten warten.


Gruß HL

OK, habe es jetzt schon so weit, das meine Gebührendaten in die Datei geschrieben werden. Das mit dem NetCat funktioniert soweit gut. Jetzt hab ich nur das Problem, das meine Gebühren-Software die Datei öffnen, auslesen und danach löschen will. Was natürlich nicht geht, da die Datei ja geöffnet ist durch mein NetCat.

Gibt es die Möglichkeit, das NetCat nicht die ganze Zeit die Datei geöffnet hat, sondern nur öffnet wenn neue Daten ankommen ??

HangLoose
10.02.03, 15:09
hi

das geht bestimmt irgendwie. allerdings bin ich nicht grade ein shellscript spezie ;).

solltest du hier keine lösung für dein problem finden, stell das ganze doch mal unter www.mrunix.de rein


Gruß HL

Jasper
10.02.03, 15:12
Original geschrieben von tmgb

Gibt es die Möglichkeit, das NetCat nicht die ganze Zeit die Datei geöffnet hat, sondern nur öffnet wenn neue Daten ankommen ??

nein, netcat arbeitet in der beziehung wie cat. hier bietet sich das standardverfahren beim rotieren von logs an:

netcat beenden
logfile umbenennen
netcat wieder starten
logfile auswerten

-j