Come ottenere traceroute su cygwin?


14

L'implementazione di traceroute (tracert) differisce su Windows e Unix. Volevo confrontare entrambi con Wireshark. Ora sono su Windows 7 e volevo ottenere rapidamente l'implementazione del traceroute di Unix.

La mia prima idea è stata quella di ottenerlo usando MSYS o Cygwin. Ho installato Cygwin con i pacchetti "inetutils *" selezionati, ma non esiste un comando traceroute e il corrispondente eseguibile in /usr/bin/.

Ho anche provato a cercare "traceroute" con la ricerca di pacchetti Cygwin e ho trovato questa sottostringa nell'elenco dei file "zsh". Ho installato zsh e provato traceroutee tcptraceroutesenza risultati.

Quale pacchetto devo verificare per l'installazione di traceroute e c'è traceroute per Cygwin?

Risposte:


14

Non c'è traceroutenei pacchetti Cygwin, perché tracertè sempre disponibile su Windows. Vedi https://cygwin.com/ml/cygwin/2005-12/msg00443.html per un thread che ne discute brevemente. Puoi provare a compilare uno stile Unix traceroutedalla fonte usign Cygwin.

Se vuoi confrontare lo stile tracertdi Windows con quello di Unix traceroute, ti consiglio di girare traceroutesu Unix o Linux, perché gli stack di rete sono diversi; quindi eseguire uno stile Unix traceroutesu Windows non ti darà le stesse tracce di rete dello stile tracerouteUnix su Unix.


3
pingesiste anche su Windows, ma è disponibile per Cygwin :) Comunque, grazie per la risposta. Forse proverò a compilare traceroutemanualmente per Cygwin.
Kirill

4
Punto giusto, e tracerouteoffre molte più funzionalità rispetto a tracert.
Stephen Kitt,

4

Ok, come ha detto Stephen Kitt, non esiste un binario traceroute pronto per l'uso per Cygwin. Ecco perché ho provato a compilarlo da solo.

Vedo che esiste un traceroute moderno, ma dalla descrizione che segue, che non può essere usato con vecchi kernel Linux e per me la compilation è bloccata su "dccp.h" mancante e ho rinunciato.

Sono stato in grado di compilare la vecchia implementazione , ma funziona come se non riuscisse a vedere le risposte ICMP su TTL superate (ci sono asterischi invece di risultati):

1 * * *

2 * * *

Forse richiede alcune correzioni per funzionare su Cygwin e questo è il motivo per cui non esiste un pacchetto traceroute per Cygwin.

Ho verificato con Wireshark e ho visto che utilizza i pacchetti di test UDP e le risposte ICMP corrispondenti vengono fornite correttamente. Voglio notare che questo vecchio traceroute funziona lentamente come quello di Win tracert("interrogando" i nodi uno alla volta). Il traceroute moderno dà risultati molto rapidamente.


2

Sono stato in grado di costruire una porta mtrin Cygwin32 usando le istruzioni:

https://github.com/traviscross/mtr/

MTR è uno strumento alternativo traceroute open source. Ha una GUI e un'interfaccia di testo Ncurses. Non è esattamente il traceroute classico, ma mi piace di più.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.