1

Тема: CMD/BAT: Не работает скрипт - VPN соединение

У меня есть пользователи который до сих пор используют Windows XP, для них я нашел/переделал код ниже, потому что в тот момент у меня небыло машина с Windows XP на руках, я тестил на Windows Server 2003, код работал без вопросов, теперь при попытке воспроизвести тот же код на машине Windows XP, к сожалению код не работает. Помогите пожалуйста ешить проблему.
Объясняю зачем мне нужен этот код, шлюз каждый раз меняется (динамический) и мне сначало нужно узнать какой IP будет у шлюза перед тем как создать маршрут.

@rasdial VPN username password
@setlocal
@for /f "tokens=1-2 delims=:" %%i in ('ipconfig ^| find "IP Address" ^| find "172.23"') do set GETIP=%%j
@route add 172.30.255.0 mask 255.255.255.0 %GetIp%
@endlocal

Host: 172.30.255.22
Gateway/Шлюз: один случайный IP из данного диапазона 172.23.241.2-172.23.241.254

Спасибо.

*Не забываем что речь идет о Windows XP, в Windows 7 и выше это решается горазда легче.

2

Re: CMD/BAT: Не работает скрипт - VPN соединение

Какбэ, а суть в чем? Найти айпишник? Ищите через реестр, например так:

@echo off
  setlocal
    ...
    set "key=HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces"
    for /f "tokens=3" %%i in (
      'reg query %key% /s ^| findstr /irc:"dhcpip"'
    ) do set "ip=%%i"
    ...
  endlocal
exit /b

Это в самом простом случае.

3 (изменено: eXtremer, 2015-03-12 18:01:02)

Re: CMD/BAT: Не работает скрипт - VPN соединение

Решил я проблему. Надо было укказать: find "IP" а не find "IP Address".

D:\Admin>VPN.bat
Connecting to VPN...
Verifying username and password...
Registering your computer on the network...
Successfully connected to VPN.
Command completed successfully.

 :\Admin>set GETIP= 172.23.241.95

D:\Admin>