UDP-Dienst erstellen

Mitglied: phpchris

phpchris (Level 1) - Jetzt verbinden

16.02.2005, aktualisiert 27.07.2005, 7353 Aufrufe, 14 Kommentare

Hallo, ich wollte mal nachfragen, ob jemand von euch einen Ansatz für mich hat, wie ich einen UDP-Dienst unter Linux realisieren kann.
Folgendes soll gemacht werden:

es soll ein Dienst auf einem bestimmten Port lauschen und bei Anfrage soll er einen String zurückgeben.
Ist so etwas relativ einfach zu realisieren?

Sorry für die vielleicht blöde Frage, aber ich weiss echt nichtmal ansatzweise, wie ich das realisieren kann...
Mitglied: 7217
7217 (Level 2)
16.02.2005 um 17:35 Uhr
Es gibt ein Programm namens nc (oder netcat, je nach Distribution), was dieses wohl kann. Mit "man nc" erfährst du mehr darüber. Wäre, je nach Anwendungsfall, das einfachste Mittel, denke ich.

Mupfel
Bitte warten ..
Mitglied: phpchris
17.02.2005 um 08:27 Uhr
Danke, das werde ich gleich mal probieren...
Bitte warten ..
Mitglied: phpchris
17.02.2005 um 13:41 Uhr
So weit so gut, nur dass netcat nach jeder erfolgreichen Verbindung sich beendet.
Weiss jemand weiter?
Bitte warten ..
Mitglied: phpchris
17.02.2005 um 14:04 Uhr
Kann mir evtl. jemand dieses Script erklären?

Da sich netcat beim Ende der Verbindung beendet, kann es nur eine einzige Verbindung bedienen. Wer eine Lösung sucht, bei der netcat mehrere Verbindungen (nacheinander oder gleichzeitig) entgegennimmt, kann das folgende, 3-zeilige Shellscript verwenden:

$ cat <<EOF>mydemon
#!/bin/bash
export port=${port:-$1} # inherit $1 as $port
nc -l -p $port -e $0 & # await further connections on this port
[ $1 ]|| PROGRAM # do the work (not for the first invocation)
EOF
$ chmod +x mydemon
$ ./mydemon 3000
$
Bitte warten ..
Mitglied: phpchris
17.02.2005 um 14:20 Uhr
Niemand?

Ich habe das Skript hier her: http://www.jfranken.de/homepages/johannes/vortraege/netcat.de.html

Irgendwie gibt es mir jedoch eine Fehlermeldung aus, das der Port $1 inkorrekt ist.

Kann mir das Skript denn niemand erklären?
Bitte warten ..
Mitglied: 7217
7217 (Level 2)
17.02.2005 um 14:46 Uhr
Versuche mal folgende Zeile:

[mupfel@ocean ~]$ while true; do nc -l -p 4711 < index.htm ; done

Mupfel
Bitte warten ..
Mitglied: phpchris
17.02.2005 um 15:36 Uhr
Danke, das hat funktioniert...
Bitte warten ..
Mitglied: 7217
7217 (Level 2)
17.02.2005 um 15:47 Uhr
fein

manchmal kann das Leben so einfach sein :-) face-smile

Mupfel
Bitte warten ..
Mitglied: phpchris
11.03.2005 um 08:46 Uhr
Eine Frage habe ich jetzt doch wieder.
Wenn ich das Script aufrufe, muss ich die Shell beenden.
Kann ich das Script irgendwie so modifizieren, dass ich danach weiter per SSH arbeiten kann?

Oder kann ich es irgendwie anders aufrufen?
Bitte warten ..
Mitglied: 7217
7217 (Level 2)
11.03.2005 um 08:55 Uhr
Ähm... ja, gute Frage... ich habs jetzt mal mit STRG-Z in den Hintergrund gejagt und dann mit "fg" wieder nach vorne geholt, wobei es sich dann jedesmal zuverlässig und reproduzierbar auf meinem System verabscheut hat (was in meinen Augen eigentlich NICHT nachvollziehbar ist).

Vielleicht klappts ja bei dir ähnlich... du könntest es mit STRG-Z in den Hintergrund schieben (supendieren) und dann mal diverse KILL-Versuche unternehmen.

regards, Mupfel
Bitte warten ..
Mitglied: phpchris
11.03.2005 um 09:29 Uhr
Nun ja, Problem ist, dass es bei Systemstart ausgeführt werden soll.

Wenn ich das nun ganz üblich als Link in rc5.d mache, bootet der VM-Rechner da nicht weiter.

P.S.: Ich schreibe VM-Rechner, damit du dir keine Sorgen machen musst. Ist nur eine VM-Ware und kein Produktivsystem ;)
Bitte warten ..
Mitglied: 7217
7217 (Level 2)
11.03.2005 um 09:31 Uhr
Hum... vielleicht findet sich hier noch eine Lösung... im Moment fällt mir jedoch nix ein, sorry.

Mupfel
Bitte warten ..
Mitglied: phpchris
11.03.2005 um 09:33 Uhr
Vielen Dank soweit...
Bitte warten ..
Mitglied: phpchris
27.07.2005 um 17:26 Uhr
OK, habs rausgefunden.
Wenn man das in eine .sh Datei packt, ruft man die in der /etc/boot.local mit einem & am Ende au, dann bootet der Server durch.
Also etwa:

sh /opt/proc/myserver.sh &
Bitte warten ..
Heiß diskutierte Inhalte
Internet
Sehr große Dateien über das Internet versenden
gelöst pd.edvVor 1 TagFrageInternet114 Kommentare

Hallo, ich muss immer wieder große Daten über das Internet übertragen - da werden viele am WeTransfer & Co. denken aber mit den winzigen ...

Hardware
MiniPC Empfehlung AliExpress
winlinVor 1 TagAllgemeinHardware24 Kommentare

Hallo Zusammen, Hat schon mal jemand hier einen Mini pc bei AliExpress gekauft und kann einen empfehlen??? Suche etwas wo ich 2vms problemlos virtualisieren ...

Microsoft
User Aktivitäten
RoadmaxVor 1 TagFrageMicrosoft13 Kommentare

Hallo Zusammen, ich möchte gerne automatisiert auf jedem Windows 10 PC im Netzwerk prüfen lassen, was der User dort live treibt. Konkret geht es ...

Windows 10
Custom Windows-10-ISO bauen (in kontinuierlicher Verbesserung) - Ausgabe 2021
beidermachtvongreyscullVor 1 TagAnleitungWindows 102 Kommentare

Editorial kleines Vorwort Ich hoffe, ich habe hier eine für den ein oder anderen Kollegen interessante Lösung zusammengestellt. Alles, was Ihr hier lest, ist ...

Cloud-Dienste
Server mieten - wo?
ZZaaiiggaaVor 14 StundenFrageCloud-Dienste9 Kommentare

Hallo zusammen, suche einen Windows Server für SQL zum mieten, mit mindestens: 256GB SSD 32GB Ram Welche Anbieter eignen sich am besten? Und muss ...

Notebook & Zubehör
Lenovo Dockingstation - Kompatibilität?
gelöst VisuciusVor 1 TagFrageNotebook & Zubehör10 Kommentare

Guten Morgen, wir habens ja gerade mit antiquierter Technik ;-) Vor mir steht ein T440s Lenovo-Laptop, der nen frisches Windows 7 ähh Quatsch Windows ...

Windows 10
Dokumentenmanagement-System für den Heimgebrauch
Pineapple27Vor 15 StundenFrageWindows 104 Kommentare

Hallo zusammen, kennt jemand ein gutes Dokumentenmanagement-System für den Heimgebrauch und hat eventuell auch schon Erfahrungen damit gemacht? Da ich es rein privat nutzen ...

LAN, WAN, Wireless
Suche fuer unser Reihenmittelhaus eine "gute" WLAN-Abdeckung
homenetVor 1 TagFrageLAN, WAN, Wireless3 Kommentare

Hallo, suche fuer unser Reihenmittelhaus eine "gute" WLAN-Abdeckung. Benoetigt fuer: Smartphones, Laptops, Radio - max. ca. 10 Geraete gleichzeitig, ueblicherweise ca. 4 Geraete dauernd ...