Как я могу определить IP-маршрут, выбранный для определенного IP-адреса назначения (не глядя на «печать маршрута» и не выясняя его вручную)?
В OS X есть route get 1.2.34
и в Linux есть /sbin/ip route get 1.2.3.4
. Есть ли что-нибудь подобное в Windows?
windows
networking
ip
routing
Илья
источник
источник
Ответы:
Ага. Откройте командную строку и введите
tracert 1.2.3.4
источник
-d
(без разрешения IP) и-w 0
(не ждите пинга) должно значительно ускорить сканирование.route get
команды оригинал размещены упоминает выполнить поиск в локальной таблице маршрутизации и возвращает результат. Например, вы можете спросить,ip route get 192.168.1.32/28
какая запись таблицы маршрутизации будет использоваться для этой сети, но вы не можете спроситьtracert
о сетевых блоках.-w 0
не работает в моем случае (выдает ошибкуBad value for option -w.
).-w 1
работает однако.tracert
не дает информацию о маршрутизации, например, какой интерфейс используется.В Powershell:
источник
Find-NetRoute
вероятно, ближе всего кip route get
Windows.Команда
pathping
аналогична,tracert
но включает исходящий интерфейс.Используя cygwin, эта команда дает исходящий IP / интерфейс для определенного места назначения (определяется как
$HOST
):pathping -n -w 1 -h 1 -q 1 $HOST | head -n 4 | tail -n 1 | awk '{print $2}'
источник
pathping -n -w 1 -h 1 -q 1 $HOST
было также очень информативным для меня. Помог мне разобраться с проблемой, с которой я столкнулся.