Sous Windows, comment déterminer l'itinéraire pour la destination IP?


21

Comment puis-je déterminer la route IP prise pour une destination IP spécifique (sans regarder "l'impression de la route" et le déterminer manuellement)?

Sous OS X, il y en a route get 1.2.34et sous Linux, il y en a /sbin/ip route get 1.2.3.4. Y a-t-il quelque chose comme ça sous Windows?


si vous souhaitez utiliser Powershell, vous pouvez utiliser l'applet de commande Get-NetRoute, technet.microsoft.com/en-us/library/hh826126.aspx
arana

Réponses:


8

Oui. Ouvrez une ligne de commande et tapeztracert 1.2.3.4


Hé, bon point. Pas une solution optimale, car il interroge le réseau pour quelque chose que vous savez localement, mais pour la plupart, il me donne les informations dont j'ai besoin.
Ilya

1
@Ilya: L'utilisation de -d(aucune résolution IP) et -w 0(n'attendez pas le ping) devrait accélérer considérablement l'analyse.
Hello71

16
Cela ne fait pas vraiment la même chose. Les route getcommandes que mentionne l'original publié effectuent une recherche dans la table de routage locale et renvoient le résultat. Par exemple, vous pouvez demander ip route get 192.168.1.32/28quelle entrée de table de routage sera utilisée pour ce réseau, mais vous ne pouvez pas poser tracertde questions sur les blocs de réseau.
larsks

1
@ Hello71 -w 0ne fonctionne pas dans mon cas (donne une erreur Bad value for option -w.). -w 1fonctionne cependant.
KrishPrabakar

8
Ce n'est pas la bonne réponse. tracertne donne pas les informations de routage telles que l'interface utilisée.
RickMeasham

25

À 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
tbh cela devrait être plus voté. Find-NetRouteest probablement le plus proche de ip route getWindows.
Bratchley

Notez que cela ne fonctionnera pas sur Windows 7 (et inférieur). Devrait fonctionner sur Windows 8 (et supérieur).
Nux

Ce devrait être la réponse acceptée. Au fait, PowerShell ne semble pas conçu pour une utilisation interactive quotidienne ...
Cyfdecyf

8

La pathpingcommande est similaire à tracertmais inclut l'interface sortante.

En utilisant cygwin, cette commande donne l'IP / l'interface sortante pour une destination particulière (spécifiée par $HOST):

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


1
C'est une meilleure réponse. pathping -n -w 1 -h 1 -q 1 $HOST a également été très instructif pour moi. M'a aidé à comprendre un problème que j'avais.
jenming
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.