![]() |
узнать какой IP будет у шлюза перед тем как создать маршрут
У меня есть пользователи который до сих пор используют Windows XP, для них я нашел/переделал код ниже, потому что в тот момент у меня небыло машина с Windows XP на руках, я тестил на Windows Server 2003, код работал без вопросов, теперь при попытке воспроизвести тот же код на машине Windows XP, к сожалению код не работает. Помогите пожалуйста ешить проблему.
Объясняю зачем мне нужен этот код, шлюз каждый раз меняется (динамический) и мне сначало нужно узнать какой IP будет у шлюза перед тем как создать маршрут. Код:
@rasdial VPN username password Gateway/Шлюз: один случайный IP из данного диапазона 172.23.241.2-172.23.241.254 Спасибо. *Не забываем что речь идет о Windows XP, в Windows 7 и выше это решается горазда легче. |
А ХР локализованная? Попробуйте вместо find "IP Address" find "IP"
|
Цитата:
Код:
D:\Admin>VPN.bat |
Скрипт видимо работает только с Windows XP (english version), с локализацией не хочет, IP (%GETIP%) не отображается, почему?
Код:
@echo off Код:
D:\>VPN2.bat |
eXtremer, Выложи вывод ipconfig
|
Тот же самый код на Windows Server 2003 (english), отображает IP:
Код:
D:\Admin>VPN2.bat Вот ipconfig после подключения PPTP Код:
C:\Documents and Settings\Администратор>ipconfig |
eXtremer, Попробуйте так:
Код:
for /f "tokens=2 delims=:" %%i in ('ipconfig ^| findstr "IP.*172\.23.*"') do set "getip=%%i" |
Foreigner, к сожалению - без изменений.
Код:
@echo off Код:
D:\>VPN2.bat |
eXtremer, Сложно сказать, вроде в локализованной ХП были какие-то проблемы с парсингом ipconfig, вроде вместо конца строки null. Из файла же (вывода ipconfig) все отработало нормально. Попробуйте так:
Код:
@echo off |
Код:
@rasdial VPN user password Код:
D:\>VPN3.bat |
Я только что поднял образ "Windows XP Professional SP3 x86 RU VL" на VMware всё работает отлично. Как я говорил, наверное система с которой я работал вчера не работало правельно. Уже походу дело когда буду поднимать VPN на компы клиентов посмотрю что получется. Спасибо.
|
Есть такой батник
REM создает в текущем каталоге готовый BAT-файл для REM переноса текущих IP настроек на другой компьютер REM и файл с именем компьютера CLS echo on ipconfig | find "IPv4" > temp.txt for /f "delims=: tokens=1-26" %%C in (temp.txt) do (echo %%D > ip.txt) ipconfig | find "Маска" > temp.txt for /f "delims=: tokens=1-26" %%C in (temp.txt) do (echo %%D > mask.txt) ipconfig | find "шлюз" > temp.txt for /f "delims=: tokens=1-26" %%C in (temp.txt) do (echo %%D > gate.txt) Вот на последнем этапе в файле temp.txt Основной шлюз. . . . . . . . . : 192.168.1.1 Основной шлюз. . . . . . . . . : Основной шлюз. . . . . . . . . : А в gate.txt записывается Режим вывода команд на экран (ECHO) отключен Не могу понять, в чем дело. |
mariolast, Лучше через wmic:
Код:
@echo off |
Аесли надо в текстовый файл писать?
Задача стоит в следующем. Создать в текущем каталоге готовый BAT-файл для переноса текущих IP настроек на другой компьютер и файл с именем компьютера Содержание батника Код:
CLS Код:
Set ADODBStream = CreateObject("ADODB.Stream") |
mariolast, Перенести настройки можно, создав сценарий конфигурации ipv4:
Код:
netsh interface ip dump > dump.txt Код:
netsh exec -f dump.txt Цитата:
Код:
@echo off |
Добрый день всем, возвращаюсь к давней проблеме.
Код ниже работает отлично на все англоязычные всерий Windows. А вот с на руских через раз или вовсе не работает. Что можно изминить чтобы кода рабтол на все версий ОС не важно какой язык? Проблема в том что код работает на половину, он создает подключение но маршрут не может добавить, не понимает команду: @route add 172.23.250.250 mask 255.255.255.255 %GetIp% Помогите разобратся. *В 99% из случай я добавляю этот код на машинах с Windows XP. Код:
@rasdial VPN User Pass |
Время: 11:36. |
Время: 11:36.
© OSzone.net 2001-