Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Старожил


Сообщения: 303
Благодарности: 19

Профиль | Отправить PM | Цитировать


Все решил проблему, выложу оптимизированный скрипт позже
оставил поля вдруг кому что понадобиться:
Код: Выделить весь код
@ECHO off
cls

netsh interface ipv4 show ipaddresses
rem netsh interface ipv4 show ipaddresses "LAN" normal
rem просмотр текущей конфигурации сетевой карты "LAN"

netsh interface ipv4 show dnsservers
rem просмотр dns-серверов "LAN"
rem netsh interface ipv4 show addresses

ECHO.
ECHO Select LAN interface for EDIT
goto idlan

:start
cls
ECHO.
ECHO 1 LAN DHCP
ECHO 2 LAN 192.168.1.XXX (gw=YYY)
ECHO 3 LAN DNS
rem ECHO 4  LAN
rem ECHO 4 WLAN DHCP
rem ECHO 5 WLAN Home
rem ECHO 6 WLAN Work
ECHO 9 ping www.google.com -t
ECHO 0 Exit
rem вывод меню для пользователя


set choice=
rem обнуление переменной choice

set /p choice=Enter the number of your choice: 
rem ввод пользователем значения переменной choice

if '%choice%'=='1' goto one
rem если значение choice равно единице, то перейти к метке one
if '%choice%'=='2' goto two
if '%choice%'=='3' goto three
rem if '%choice%'=='4' goto four
rem if '%choice%'=='4' goto idlan
if '%choice%'=='5' goto five
if '%choice%'=='6' goto six
rem if '%choice%'=='7' goto seven
rem if '%choice%'=='8' goto eight
if '%choice%'=='9' goto nine
if '%choice%'=='0' goto end

if '%choice%'=='' goto start
rem при использовании DHCP удобно просто нажимать Enter и сразу видеть - получен ли IP-адрес или нет

ECHO "%choice%" is not valid. Please try again
ECHO.
goto start
rem если введенное пользователем значение не предусмотрено, то начать сначала

:idlan
set id=
set /p id=Enter interface:
goto start

:one
rem LAN DHCP
netsh interface ipv4 set address name=%id% source=dhcp
netsh interface ipv4 set dns name=%id% source=dhcp
goto start

:two
rem LAN 192.168.1.XXX (gw=YYY)
ECHO Manual choice
set /p ip=Enter the last octet of your IP 192.168.1.
rem ввод значения последнего октета IP-адреса вручную
set /p gw=Enter the last octet of your GW 192.168.1.
rem ввод значения последнего октета шлюза вручную

if '%gw%'=='0' (netsh interface ipv4 set address name=%id% static 192.168.1.%ip% 255.255.255.0) else (netsh interface ipv4 set address name=%id% static 192.168.1.%ip% 255.255.255.0 192.168.1.%gw%)
rem if '%gw%'!==!'0' (netsh interface ipv4 add dns "LAN" 192.168.1.%gw% 2)
rem если нужен просто IP-адрес и маска (напимер, по WLAN - интернет, а по LAN надо настроить какую-то железку), то вводим 0 в качестве GW и он (GW) прописываться не будет

rem netsh interface ipv4 set address name="LAN" static 192.168.1.%ip% 255.255.255.0 192.168.1.%gw%
rem netsh interface ipv4 add dns "LAN" 192.168.1.%gw% 2
goto start

:three
rem LAN DNS
rem netsh interface ipv4 set address name="LAN" static 10.253.0.35 255.255.255.192 10.253.0.7
rem netsh interface ipv4 set dnsserver "LAN" static none
netsh interface ipv4 set dnsserver %id% static none
set dns1=
set /p dns1=Enter DNS #1:
netsh interface ipv4 add dns %id% %dns1% 1
netsh interface ipv4 add dns %id% 192.168.222.152 2
rem netsh interface ipv4 add dns "LAN" 4.2.2.2 3
rem netsh interface ipv4 add dns "LAN" 8.8.8.8 4
goto start

:four
rem WLAN DHCP
netsh interface ipv4 set address name="WLAN" source=dhcp
netsh interface ipv4 set dns name="WLAN" source=dhcp
goto start

:five
rem WLAN Home
netsh interface ipv4 set address name="WLAN" static 192.168.1.200 255.255.255.0 192.168.1.254
netsh interface ipv4 set dnsserver "WLAN" static none
netsh interface ipv4 add dns "WLAN" 192.168.1.254 1
netsh interface ipv4 add dns "WLAN" 212.154.163.162 2 
netsh interface ipv4 add dns "WLAN" 4.2.2.2 3
netsh interface ipv4 add dns "WLAN" 8.8.8.8 4
goto start

:six
rem WLAN Work
netsh interface ipv4 set address name="WLAN" static 10.253.0.35 255.255.255.192 10.253.0.7
netsh interface ipv4 set dnsserver "WLAN" static none
netsh interface ipv4 add dns "WLAN" 212.154.163.162 1
netsh interface ipv4 add dns "WLAN" 212.19.149.178 2
netsh interface ipv4 add dns "WLAN" 4.2.2.2 3
netsh interface ipv4 add dns "WLAN" 8.8.8.8 4
goto start

:nine
ping.exe www.google.com -t
rem бесконечный ping, прерывается вводом Ctrl+C, а затем Y (завершить выполнение файла) или N (не завершать выполнение) и Enter
goto start

:end

rem полезные команды:

rem timeout 5
rem эта команда приостанавливает выполнение файла на 5 секунд

rem pause
rem приостанавливает выполнение файла, выводит сообщение "нажмите любую клавишу для продолжения" и ждет нажатия любой клавиши :)

rem pause > null
rem то же, только без вывода сообщения на экран

rem cls
rem очищащет экран

Последний раз редактировалось Fantastish, 14-07-2016 в 13:21.


Отправлено: 13:13, 14-07-2016 | #2