Я хочу определить, какой IP-адрес основного источника на рабочей станции (используется, когда соединение идет через шлюз по умолчанию)
На рабочей станции много IP-адресов / интерфейсов (много частных подсетей, виртуальный ящик, который скрипт должен игнорировать).
Я нашел% computername%, но он ненадежен, потому что он очень часто возвращает частный IP-адрес сети virtualbox.
Я думал найти его на "маршруте ПРИНТ"
for /f "tokens=4" %%a in ('route PRINT -4 ^| findstr 0.0.0.0') do set _IPaddr=%%a
echo IP is: %_IPaddr%
но "findstr 0.0.0.0" возвращает также другие маршруты:
>route PRINT -4 | findstr /s /i /m 0.0.0.0
0.0.0.0 0.0.0.0 10.170.44.1 10.170.44.150 2
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 192.168.177.1 281
224.0.0.0 240.0.0.0 On-link 192.168.137.1 311
224.0.0.0 240.0.0.0 On-link 10.170.44.150 257
как сказать findstr возвращать только первую строку, начинающуюся с пробелов, а затем 0.0.0.0? (линия маршрута по умолчанию)?