Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - определить основной шлюз для выбраннго адаптера

Ответить
Настройки темы
CMD/BAT - определить основной шлюз для выбраннго адаптера

Новый участник


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

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


Несколько сетевых адаптеров, настройки получают по dhcp.
Нужно брать текущий шлюз для одного из адаптеров, и использовать его дальше в скрипте.
Примерно так:
Код: Выделить весь код
Получить шлюз для "ethernet адаптер1"
route add 0.0.0.0 mask 0.0.0.0 'шлюз для "ethernet адаптер1"'

Отправлено: 22:45, 22-03-2017

 

Новый участник


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

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


Код: Выделить весь код
for /F "tokens=2 delims=:" %a in ('netsh inte
rface ip show addresses name="Подключение по локальной сети"|find "Основной шлюз
"') do set "shl=%a"

C:\Documents and Settings\COMP_NAME>echo  =
 =

C:\Documents and Settings\COMP_NAME>pause
Для продолжения нажмите любую клавишу . . .
Код: Выделить весь код
Настройка протокола IP для Windows



        Имя компьютера  . . . . . . . . . : name

        Основной DNS-суффикс  . . . . . . : 

        Тип узла. . . . . . . . . . . . . : неизвестный

        IP-маршрутизация включена . . . . : нет

        WINS-прокси включен . . . . . . . : нет



Подключение по локальной сети - Ethernet адаптер:



        DNS-суффикс этого подключения . . : 

        Описание  . . . . . . . . . . . . : TAP-Win32 Adapter V9

        Физический адрес. . . . . . . . . : здесь_мак

        Dhcp включен. . . . . . . . . . . : да

        Автонастройка включена  . . . . . : да

        IP-адрес  . . . . . . . . . . . . : здесь_ип

        Маска подсети . . . . . . . . . . : здесь_маска_подсети

        Основной шлюз . . . . . . . . . . : здесь_основной_шлюз

        DHCP-сервер . . . . . . . . . . . : здесь_DHCP-сервер

        DNS-серверы . . . . . . . . . . . : здесь_DNS-серверы

        NetBIOS через TCP/IP. . . . . . . : отключен

        Аренда получена . . . . . . . . . : 9 апреля 2017 г. 16:11:48

        Аренда истекает . . . . . . . . . : 9 апреля 2018 г. 16:11:48



Подключение по локальной сети 7 - Ethernet адаптер:



        DNS-суффикс этого подключения . . : 

        Описание  . . . . . . . . . . . . : LAN

        Физический адрес. . . . . . . . . : здесь_мак

        Dhcp включен. . . . . . . . . . . : да

        Автонастройка включена  . . . . . : да

        IP-адрес  . . . . . . . . . . . . : здесь_ип

        Маска подсети . . . . . . . . . . : здесь_маска_подсети

        Основной шлюз . . . . . . . . . . : здесь_основной_шлюз

        DHCP-сервер . . . . . . . . . . . : здесь_DHCP-сервер

        DNS-серверы . . . . . . . . . . . : здесь_DNS-серверы

        NetBIOS через TCP/IP. . . . . . . : отключен

        Аренда получена . . . . . . . . . : 9 апреля 2017 г. 16:11:48

        Аренда истекает . . . . . . . . . : 10 апреля 2017 г. 16:11:48

Отправлено: 19:31, 09-04-2017 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для NickM

Ветеран


Contributor


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

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


так ведь у ТС WinXp, а там с netsh не все так хорошо...

Отправлено: 20:55, 09-04-2017 | #22


Ветеран


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

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


neth1, код точно сохранен в кодировке 866? Также код из п15 должен работать в кодировке 866.
а каков вывод команды: netsh interface ip show addresses name="Подключение по локальной сети"

Отправлено: 01:28, 10-04-2017 | #23


Новый участник


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

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


Кодировка 866.
Команда interface ip show addresses "name=Подключение по локальной сети" не найд
ена.
Странно, что это не работает. "show addresses" присутствует в help'е к netsh. Другие show отрабатывают нормально.

Отправлено: 11:51, 10-04-2017 | #24


Ветеран


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

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


ну, а это? Там без netsh, wmic идет в поставке XP, если не почикано
Цитата alpap:
Также код из п15 должен работать в кодировке 866 »
Цитата neth1:
Команда interface »
кстати так здесь, записано или именно так и запускалась, если да, пропущено netsh вначале строки

Отправлено: 15:56, 10-04-2017 | #25


Новый участник


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

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


Запускалось именно
Код: Выделить весь код
netsh interface ip show addresses name="Подключение по локальной сети"
Ошибка
Код: Выделить весь код
Команда interface ip show addresses "name=Подключение по локальной сети" не найд
ена.
Запускал в консоли netsh и делал пошагово:
Код: Выделить весь код
netsh>interface>ip>show addresses name="Подключение по локальной сети"
Результат не изменился.
Код: Выделить весь код
netsh interface ip>show config name="Подключение по локальной сети"
работает.
Код: Выделить весь код
@echo off
set "na="& set "shl="
for /f "tokens=2 delims==" %%a in ('wmic path Win32_networkadapter where ^(NetConnectionStatus^="2"^) get NetConnectionID /value^|find "="') do if not defined na set "na=%%a"
for /f "delims=[]" %%a in ('ipconfig /all^|find /n "%na%"') do set "ns=%%a"
for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|more +%ns%^|find "Основной шлюз"') do if not defined shl set "shl=%%a"
echo %shl: =%
pause
Не работает
Код: Выделить весь код
Не удается получить доступ к файлу C:\Documents and Settings\comp_name\+

Отправлено: 22:10, 10-04-2017 | #26


Ветеран


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

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


эта команда выдает список адаптеров?
Код: Выделить весь код
wmic path Win32_networkadapter get name

Отправлено: 01:53, 11-04-2017 | #27


Ветеран


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

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


иначе в вашем случае только так, без выбора, сугубо по имени и разбирая ipconfig:
Код: Выделить весь код
@echo off
set "na=Подключение по локальной сети"
set "shl="
for /f "delims=[]" %%a in ('ipconfig /all^|find /n "%na%"') do set "ns=%%a"
for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|more +%ns%^|find "Основной шлюз"') do if not defined shl set "shl=%%a"
echo %shl: =%
pause
не забываем - кодировка 866!

Отправлено: 11:08, 11-04-2017 | #28


Новый участник


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

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


Цитата alpap:
Код: Выделить весь код
wmic path Win32_networkadapter get name
»
Выдает. Все адаптеры, включая отключенные.
Цитата alpap:
Код: Выделить весь код
@echo off set "na=Подключение по локальной сети" set "shl=" for /f "delims=[]" %%a in ('ipconfig /all^|find /n "%na%"') do set "ns=%%a" for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|more +%ns%^|find "Основной шлюз"') do if not defined shl set "shl=%%a" echo %shl: =% pause
»
Код: Выделить весь код
Не удается получить доступ к файлу C:\Documents and Settings\comp_name\+
 =
Для продолжения нажмите любую клавишу . . .

Отправлено: 11:34, 11-04-2017 | #29


Ветеран


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

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


neth1,
покажите скриншот окна после выполнения кода:
Код: Выделить весь код
@echo on
set "na=Подключение по локальной сети"
set "shl="
for /f "delims=[]" %%a in ('ipconfig /all^|find /n "%na%"') do set "ns=%%a"
for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|more +%ns%^|find "Основной шлюз"') do if not defined shl set "shl=%%a"
echo %shl: =%
pause
и скриншот этого же кода, записанного в bat файл в открытом виде файла, естественно

Отправлено: 12:03, 11-04-2017 | #30



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - определить основной шлюз для выбраннго адаптера

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
2008 R2 - Основной шлюз aus Windows Server 2008/2008 R2 15 03-07-2013 13:37
Разное - Основной шлюз :S apk.apocalypses Сетевые технологии 2 22-02-2012 14:36
VPN S-T-S как основной шлюз Tele2 ISA Server / Microsoft Forefront TMG 5 19-08-2010 15:30
Основной шлюз wik7000 Microsoft Windows NT/2000/2003 11 17-11-2006 13:19




 
Переход