Frage traceroute TCP äquivalent für Windows [geschlossen]


Ich versuche zu bestimmen woher Die Verbindung zu einem externen Host, der einen bestimmten TCP-Port verwendet, wird blockiert. Traceroute für Windows verwendet nur ICMP, und Telnet wird mir nur den Port mitteilen ist blockiert und nicht wo. Kennt jemand ein Windows-Dienstprogramm ähnlich wie Traceroute, das dies erreichen wird?


22
2017-08-03 11:05


Ursprung




Antworten:


Sie können verwenden nmap 5.0 mit --traceroute Möglichkeit. Sie erhalten auch einen Portscan kostenlos :).

Wenn Sie einen bestimmten Port testen möchten, können Sie verwenden -p port Möglichkeit. (Sie sollten auch die Option -Pn verwenden, damit nmap nicht zuerst eine reguläre ICMP-Sonde durchführt). Dies ist ein Beispiel:

$ sudo nmap -Pn --traceroute -p 8000 destination.com
PORT     STATE SERVICE
8000/tcp open  http-alt

TRACEROUTE (using port 443/tcp)
HOP RTT  ADDRESS
1   0.30 origin.com (192.168.100.1)
2   0.26 10.3.0.4
3   0.42 10.1.1.253
4   1.00 gateway1.com (33.33.33.33)
5   2.18 gateway2.com (66.66.66.66)
6   ...
7   1.96 gateway3.com (99.99.99.99)
8   ...
9   8.28 destination.com (111.111.111.111)

Wenn Sie an einem grafischen Tool interessiert sind, können Sie es verwenden zenmap, die auch Topologiekarten basierend auf der Traceroute-Ausgabe anzeigt.

topology maps


29
2017-08-03 11:55



Wenn ich den obigen Befehl auf meinem ausführen nmap es macht tatsächlich eine ICMP-Traceroute. Auch komisch, du spezifizierst Port 8000, aber nmap benutzt Port 443 für die eigentliche Traceroute. Warum? - kojiro


Scapy hat eine TCP-Trace-Route-Funktion, die in diesem beschrieben wird Scapy Tutorial. Scapy kann unter Windows installiert werden, Hier sind die Anweisungen. Ich bin nicht sicher, dass seine Funktion in der Windows-Version verfügbar ist, aber es könnte sein.

Es wird helfen, Python oder zumindest etwas Wissen über OO (Objektorientierte) Programmierung zu kennen, aber Sie brauchen es vielleicht nicht, nur um dem Tutorial zu folgen, mit dem ich verlinkt bin. Scapy geht außerdem davon aus, dass Sie ein grundlegendes Verständnis des OSI-Modells haben, denke ich.


2
2017-08-03 11:29



Hinweis: Scapy Traceroute-Funktion ist unter Windows verfügbar. - Maxwell


Ich bin nicht sicher, ob nmap - traceroute unter Windows ordnungsgemäß funktionieren wird, weil Windows Anforderungen für nicht standardisierte TTLs ignoriert. Ich bekomme nur einen seltsam geformten Zwei-Hop-Pfad zu etwas, das ungefähr 10-20 Hops entfernt ist:

c:\Program Files (x86)\Nmap>nmap -Pn --traceroute -p 443 66.98.200.8

Starting Nmap 6.01 ( http://nmap.org ) at 2012-08-27 18:52 GMT Daylight Time
Nmap scan report for live.sagepay.com (195.170.169.9)
Host is up (0.21s latency).
PORT    STATE SERVICE
443/tcp open  https

TRACEROUTE (using port 443/tcp)
HOP RTT      ADDRESS
1   31.00 ms 192.168.192.2
2   62.00 ms 66.98.200.8

Ich poste zurück, wenn ich etwas passendes für den Zweck finde, der nicht bereits erwähnt worden ist.


1
2017-08-27 17:59



Ein Sniffer sollte dir sagen, was passiert. Meine Vermutung ist, dass ein Zwischen-Router / Gateway versucht, ein Smart-Aleck zu sein und die Pakete auf eine ungewöhnliche Weise behandelt. - ivan_pozdeev


Sie können eine Reihe von Links googeln finden.

Eine Linux-Implementierung auf Traceroute in der Lage sein, das TCP-Protokoll zu verwenden und die alte Implementierung auf vielen Distributionen zu ersetzen. Einfache Verwendung der -T Flagge auf diesen Systemen.

Auf dem Mac -P TCP macht den Job.

Historisch wurde eine Reihe von Ad-hoc-Tools entwickelt; Unter den anderen Referenzen gibt es ein einfaches Python-Skript, das auch den zu untersuchenden Port angeben kann: tcptraceroute.py während einer der beliebtesten ist tcptraceroute von Michael Toren.


1
2017-08-03 11:30



Die Wikipedia-Seite wurde gelöscht. - Scott Munro
auch hier gelöscht, tnx - drAlberT
Die Verbindung zu tcptraceroute von Michael Toren ist tot - Tanner


Mir ist kein Traceroute-Tool für Windows bekannt, mit dem Sie den Port definieren können. Das ICMP-Protokoll ist für diese Art von Routendiagnose ausgelegt; andere Protokolle sind nicht. Es ist wahrscheinlich, dass, wenn der Host selbst, wenn er die Verbindung nicht verweigert, irgendwo entlang der Route eine Firewall ist, die einfach die Pakete ablegt, ohne irgendwelche anderen Informationen an die Quelle zurückzugeben, in welchem ​​Fall kein Dienstprogramm für Ihre Situation funktionieren würde.

Du könntest versuchen zu feuern Wiresharkund dann Telnet auf Ihrem gewünschten Port zum Zielsystem. Sie könnte (aber wahrscheinlich wird nicht) bekommen TCP_RESET oder DEST_UNREACH oder etwas zurück von der Firewall blockiert die Kommunikation, aber das ist unwahrscheinlich. Letztendlich müssen Sie mit den Netzwerkmitarbeitern sprechen, die die Route verfolgen und Regelwerke von Firewalls auf dem Weg betrachten können.

Viel Glück.


0
2017-08-03 11:49





Es gibt einige Windows-Alternativen zum UNIX-Favoriten LFT.

Leider sind keine von denen, die mir in den Sinn kommen, frei. Aber sie sind ziemlich gut.

Wenn Sie WinXP SP2 ~ verwenden, können Sie möglicherweise Probleme bei der Ausführung von TCP-Tracer-Verbindungen haben. Dies liegt an der Entfernung der Raw Socket-Unterstützung.


0
2017-08-03 12:04





Versuchen Sie NETSCAN http://www.softperfect.com/products/networkscanner Es macht mehr, dass nur ein Gerät scannt, Sie können es bekommen, um eine Reihe von IP-Adresse und Ports zu überprüfen, und es ist kostenlos.


0
2017-08-06 22:10