ubuntuusers.de

Bash Script UDP Port prüfen

Status: Gelöst | Ubuntu-Version: Ubuntu 6.06 (Dapper Drake)
Antworten |

Dom

Anmeldungsdatum:
8. November 2004

Beiträge: 107

Hallo zusammen,

gibt es eine Möglichkeit mittel bash Script die Verfügbarkeit von einem UDP Port zu prüfen?
In meinem Fall soll es TFTP sein. Also Port 69.

Das ganze wollte ich dann in ein Script packen und es erst durchlaufen lassen, wenn der TFTP Server auch verfügbar ist.

Ich habe dazu leider noch nichts passendes gefunden. Hat vielleicht einer von euch eine Idee wie ich das anstellen kann?

Danke schon einmal.

MfG
Dominic

uname

Anmeldungsdatum:
28. März 2007

Beiträge: 6030

Wohnort: 127.0.0.1

UDP hat leider den Nachteil, dass es keine Rückmeldung wie bei TCP gibt. Sollte der UDP-Port auf einem entfernten Rechner sein (wovon ich ausgehe), dann ist das wohl schlecht.
Könntest Dir jedoch mal "netcat" anschauen, damit kannst Du Daten über UDP bzw. TCP verschicken und empfangen.

u.li

Avatar von u.li

Anmeldungsdatum:
12. Mai 2007

Beiträge: 503

Wohnort: Hürth

du kannst den port mit nmap scannen:

$ sudo nmap -sU -p 69 hostname
Starting Nmap 4.20 ( http://insecure.org ) at 2007-05-14 10:44 BST
Interesting ports on hostname (1.2.3.4):
PORT   STATE         SERVICE
69/udp open|filtered tftp

Dom

(Themenstarter)

Anmeldungsdatum:
8. November 2004

Beiträge: 107

Moin,

das mit nmap ist ne gute Idee. Das kann ich sogar in ein Script einbauen.

Besten Dank.

MfG
Dominic

fishmac

Anmeldungsdatum:
8. März 2007

Beiträge: 124

Wenn der Kram auf dem lokalen Rechner laeuft ist netstat z.B.

netstat -unp


das Mittel der Wahl...

Dom

(Themenstarter)

Anmeldungsdatum:
8. November 2004

Beiträge: 107

Hier mal meine Lösung die ich benutze.

#! /bin/bash
#
TESTPORT=`/usr/bin/nmap -sU -p 69 192.168.0.100 | grep tftp | cut -d " " -f2 | cut -c1-4`
if [ "$TESTPORT" = "open" ]; then

 echo "tftp ist auf 192.168.0.100 eingeschlatet"

else
        echo "tftp ist auf 192.168.0.100 abgeschlatet"

fi

Läuft soweit ganz gut.

MfG
Dominic

Lux Team-Icon

Avatar von Lux

Anmeldungsdatum:
10. November 2005

Beiträge: 5152

Wohnort: Grüt (Gossau ZH), Schweiz

Dom hat geschrieben:

TESTPORT=`/usr/bin/nmap -sU -p 69 192.168.0.100 | grep tftp | cut -d " " -f2 | cut -c1-4`

Darf ich mal verbessern?

TESTPORT=`/usr/bin/nmap -sU -p 69 192.168.0.100 | awk '/tftp/ {print $2}'`

Das ist besser als drei Programme aufzurufen.

Dirk

Antworten |