batofl пишет:правильный способ опрeдeлять компьютeр в сeти, до которого самый длинный маршрут
Интересный вопрос.
Метрика:
Метрика - числовое значение, влияющее на выбор маршрута в компьютерных сетях. В случае статической маршрутизации это значение обычно не изменяется в пределах сессии.
Иными словами это число переходов (скачков) до места назначения.
Все устройства локальной сети считаются одним промежуточным устройством, и каждый маршрутизатор, используемый на пути к получателю, считается дополнительным устройством. Метрика используется для определения наилучшего маршрута.
Значение параметра метрики определяет приоритет, который назначается маршруту, связанному с определенным интерфейсом.
Чем меньше число метрики, тем выше приоритет.
Но описание немного лукавит, метрика 25 (или 25 "хопов") до маршрутизатора своей "локалки" звучит как оксюморон.
Более-менее точную информацию покажет netsh (проверял на Windows 7 Pro SP1 x64):
C:\> netsh interface ipv4 show route
Публикация Тип Мет Префикс Инд Имя шлюза/интерфейса
------- -------- --- ------------------------ --- ------------------------
Нет Вручную 1 0.0.0.0/0 16 192.168.0.1
Нет Вручную 0 0.0.0.0/0 11 192.168.0.1
Нет Вручную 1 10.0.0.0/24 11 192.168.0.2
Нет Вручную 256 127.0.0.0/8 1 Loopback Pseudo-Interface 1
Нет Вручную 256 127.0.0.1/32 1 Loopback Pseudo-Interface 1
Нет Вручную 256 127.255.255.255/32 1 Loopback Pseudo-Interface 1
<...>
"Наколеночный" код (возможны косяки сортировки и работа через временный файл мне не оч. нравится):
(for /f "tokens=3" %%a in ('netsh interface ipv4 show route ^| more +3') do echo %%a) > 123.txt
for /f "tokens=2 delims=]" %%a in ('type 123.txt ^| sort /r ^| find "" /v /n ^| findstr "\[1\]"') do (echo %%a)
del 123.txt
Немного поправленный код (убрана метрика -1 [256]):
(for /f "tokens=3" %%a in ('netsh interface ipv4 show route ^| more +3') do echo %%a) > 123.txt
for /f "tokens=2 delims=]" %%a in ('type 123.txt ^| sort /r ^| find "256" /v ^| find "" /v /n ^| findstr "\[1\]"') do (echo %%a)
del 123.txt
На моём ПК покажет длину маршрута 1 (в ПК 2 сетёвки, один маршрут до VPN-сервера, до которого 1 прыжок, т.к. он в локалке, и один маршрут до тестовой сетки) - маршрут до тестовой сетки.