Möglicherweise "ping" URL: Port? (OS X-GeekTool)

51550
loeschg

Ich versuche GeekTool (Mac Pref-Bereich) zu verwenden. Im Wesentlichen wird nur die Ausgabe eines Shellbefehls / -scripts auf dem Desktop eingebettet ... http://lifehacker.com/#!244026/geek-to-live--monitor -Ihre Mac-und-mehr-mit-Geektool ), um aa entfernte Maschinen / Server zu überwachen, und ich habe einige Probleme zu bestimmen, wie am besten überprüft werden kann, ob eine Maschine hoch / runter ist.

Ich verwende no-ip als freie DNS-Weiterleitung ... aber das hilft mir nur bei der öffentlichen IP des Routers. Die Maschine, die ich möchte, befindet sich hinter dem Router und kann daher nicht direkt "ping" werden.

Ich habe Portweiterleitung für Port 8080 eingerichtet, der zu der gewünschten Maschine führt. Gibt es eine Möglichkeit, im Wesentlichen über Port 8080 zu pingen, um festzustellen, ob die Maschine läuft und läuft? Ich habe Telnet ausprobiert, aber das funktioniert in GeekTool anscheinend nicht. Ich betreibe eine Website unter 8080. Ich denke, ich möchte nur wissen, ob / wann sie ausfällt.

Vielen Dank im Voraus ... wenn ich mehr Klarheit geben kann, lass es mich wissen.

(mein Problem herausgefunden ... siehe unten)

13
"ping" ist ein ICMP-Protokoll, wohingegen Ports TCP- und UDP-Konzepte sind. Alle 3 sind verschiedene Protokolle über IP. Das bedeutet, dass ein IP-Paket, das TCP enthält, kein ICMP enthalten kann und umgekehrt. Dies bedeutet auch, dass der TCP-Header (mit dem Port) nicht in einem ICMP-Ping-Paket enthalten ist. MSalters vor 10 Jahren 1

4 Antworten auf die Frage

18
3498DB

Um einen bestimmten Port zu überprüfen, können Sie Telnet verwenden:

telnet 127.0.0.1 8080 

(Der Port folgt dem IP / Hostnamen mit einem Leerzeichen und nicht mit einem Doppelpunkt.)

Wenn Sie sofort einen Fehler erhalten, ist der Port nicht verfügbar. Wenn Telnet hängt, haben Sie erfolgreich eine Verbindung mit dem Port hergestellt. Ctrl+ Cum telnet dann zu töten.

Dies kann jedoch möglicherweise bei dem Problem der Portweiterleitung helfen. Es bringt Sie einfach zu dieser IP und diesem Port.

Dies würde den Job erledigen ... aber es funktioniert nicht mit GeekTool: /. Ich schätze die hilfe loeschg vor 13 Jahren 0
5
Juha Palomäki

Theres is hping Dienstprogramm, mit dem Sie TCP-Ports pingen können. Dies ist auch über homebrew (brew install hping) verfügbar.

backdrift.org enthält eine einfache Anleitung, wie Sie HPing für diesen Zweck verwenden

$ hping -S -p 80 google.com HPING google.com (eth0 66.249.92.104): S set, 40 headers + 0 data bytes len=44 ip=66.249.92.104 ttl=47 id=10442 sport=80 flags=SA seq=0 win=5720 rtt=97.7 ms len=44 ip=66.249.92.104 ttl=47 id=40838 sport=80 flags=SA seq=1 win=5720 rtt=97.7 ms len=44 ip=66.249.92.104 ttl=47 id=64607 sport=80 flags=SA seq=2 win=5720 rtt=97.7 ms len=44 ip=66.249.92.104 ttl=47 id=10443 sport=80 flags=SA seq=3 win=5720 rtt=97.7 ms ^C --- google.com hping statistic --- 4 packets transmitted, 4 packets received, 0% packet loss round-trip min/avg/max = 97.7/97.7/97.7 ms 
0
Neil

Sie können beispielsweise verwenden wget, um curlzu überprüfen, ob die Website reagiert.

Ich werde das untersuchen ... danke! loeschg vor 13 Jahren 0
0
loeschg

Telnet erledigt den Job, aber ich kann das nicht mit GeekTool integrieren. Am Ende machte ich ein mysqladmin-Ping an die Remote-Maschine . Die Website hat ein db-Backend, so dass dieses (mehr oder weniger) die Informationen liefert, nach denen ich suche. Danke für all die Hilfe!