Su Windows, come determinare il percorso per la destinazione IP?


21

Come posso determinare il percorso IP preso per una destinazione IP specifica (senza guardare "route route" e capirlo manualmente)?

In OS X c'è route get 1.2.34e in Linux c'è /sbin/ip route get 1.2.3.4. C'è qualcosa del genere su Windows?


se si desidera utilizzare Powershell, è possibile utilizzare il cmdlet Get-NetRoute, technet.microsoft.com/en-us/library/hh826126.aspx
arana,

Risposte:


8

Sì. Apri una riga di comando e digitatracert 1.2.3.4


Heh, buon punto. Non è una soluzione ottimale, poiché interroga la rete per qualcosa che conosci localmente, ma per la maggior parte mi fornisce le informazioni di cui ho bisogno.
Ilya,

1
@Ilya: l'uso di -d(nessuna risoluzione IP) e -w 0(non aspettare il ping) dovrebbe accelerare molto la scansione.
Ciao,

16
Questo non fa davvero la stessa cosa. I route getcomandi menzionati dall'originale pubblicato eseguono una ricerca nella tabella di routing locale e restituiscono il risultato. Ad esempio, puoi chiedere ip route get 192.168.1.32/28di trovare quale voce della tabella di routing verrà utilizzata per quella rete, ma non puoi chiedere tracertinformazioni sui blocchi di rete.
Larks

1
@ Hello71 -w 0non funziona nel mio caso (dà un errore Bad value for option -w.). -w 1funziona comunque.
KrishPrabakar

8
Questa non è la risposta corretta tracertnon fornisce le informazioni di routing come l'interfaccia utilizzata.
RickMeasham,

25

In Powershell:

Find-NetRoute -RemoteIPAddress "10.0.0.34" | Select-Object ifIndex,DestinationPrefix,NextHop,RouteMetric -Last 1

ifIndex DestinationPrefix NextHop     RouteMetric
------- ----------------- -------     -----------
     49 10.0.0.0/24       10.64.130.4           0

2
Questo dovrebbe essere votato di più. Find-NetRouteè probabilmente il più vicino a ip route getWindows.
Bratchley,

Si noti che questo non funzionerà su Windows 7 (e versioni precedenti). Dovrebbe funzionare su Windows 8 (e versioni successive).
Nux,

Questa dovrebbe essere la risposta accettata. A proposito, PowerShell sembra non progettato per l'uso interattivo quotidiano ...
cyfdecyf

8

Il pathpingcomando è simile tracertma include l'interfaccia in uscita.

Usando cygwin, questo comando fornisce l'IP / l'interfaccia in uscita per una destinazione particolare (specificata da $HOST):

pathping -n -w 1 -h 1 -q 1 $HOST | head -n 4 | tail -n 1 | awk '{print $2}'


1
Questa è una risposta migliore pathping -n -w 1 -h 1 -q 1 $HOST è stato anche molto istruttivo per me. Mi ha aiutato a capire un problema che stavo avendo.
Jenming,
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.