Wenn Sie keine Firewalls und Router im Weg haben, dh wenn Sie sich im selben Segment wie der Host befinden, den Sie überprüfen möchten, sind die meisten der oben genannten Lösungen ein wenig erschöpfend.
Es spielt keine Rolle, mit welchem Port Sie eine Verbindung herstellen. Wenn Sie eine Verbindung mit einem Port herstellen, auf dem wahrscheinlich kein Dienst ausgeführt wird, können Sie die Aufgabe erledigen, ohne dass dies erkannt wird.
Wie?
Sie können jedes beliebige Tool verwenden, aber wir können nur Telnet verwenden ...
% telnet <host> 313373
Trying 10.211.55.3...
telnet: connect to address 10.211.55.3: Connection refused
telnet: Unable to connect to remote host
%
Dies sollte sofort geschehen, es sei denn, der Host verwirft Pakete. Was tatsächlich passiert, ist, dass der TCP / IP-Stack auf dem Host Ihnen ein TCP-Segment mit gesetztem RST-Bit zurücksendet - dh, Sie beenden Ihr SYN-Paket.
Die Tatsache, dass Sie ein RST-Paket erhalten haben, bedeutet, dass tatsächlich ein Host am anderen Ende verfügbar ist, und als Bonus - Sie haben dies unentdeckt getan (TCP / IP hatte keine Anwendung der oberen Schicht, mit der Sie über diese Verbindung sprechen konnten). .
Anstatt jedoch Telnet zu verwenden, würde ich wahrscheinlich so etwas wie Scapy verwenden, etwas aufschreiben, das nach der RST-Flagge sucht, und Sie wissen lassen.
Um dies zu vervollständigen: Wenn Sie versuchen, einen Host auf der IP-Adresse zu finden, bleibt dieser für eine Weile hängen, und die Zeitüberschreitung ist dasselbe, was passieren würde , wenn der empfangende Host eine Firewall mit einem Drop-Filter hätte.
Wenn Firewalls beteiligt sind, verwenden Sie, wie andere vorgeschlagen haben, Tools wie nmap
und was auch immer.