Смотрите также:
- Windows – Отключается сетевой диск
- Windows – Определение MAC-адреса по IP, использование команды nbtstat
- Windows – Подключение сетевого принтера через net use
- Windows Live Mail как бесплатная альтернатива Outlook для подключения к Exchange
- Windows – Internet Explorer: узел не добавляется в надежные узлы
- Windows – Переключение языка (раскладки клавиатуры) EN-RU в DOS-сессиях
- Windows – Отправка факса во время разговора
Windows — Изменение IP-адреса и параметров TCP/IP утилитой netsh
В Windows есть замечательная команда netsh, которая позволяет из скрипта совершать самые разнообразные действия по настройке сети. Одна из часто встречающихся задач — изменение IP-адреса скриптом.
Изменить адрес с помощью netsh легко, нужно только знать, как называется интерфейс, на который будет повешен этот адрес. В русской версии Windows он обычно называется «Подключение по локальной сети».
Пример настройки адреса. Возьмем какой-нибудь 192.168.24.33:
netsh interface ip set address name="Подключение по локальной сети" source=static addr=192.168.24.33 mask=255.255.255.0 gateway=noneДругой пример с тем же адресом и с указанием основного шлюза 192.168.24.1:
netsh interface ip set address name="Подключение по локальной сети" source=static addr=192.168.24.33 mask=255.255.255.0 gateway=192.168.24.1 gwmetric=1С помощью netsh можно, к примеру, очистить ARP-кэш (то же самое, что делает
arp -d *):netsh interface ip delete arpcacheИли сбросить стек TCP/IP в случае, когда он поврежден и подключение к интернету или локальной сети не работает:
netsh interface ip reset [log_filename]Здесь
log_filename— это имя файла для вывода в него лога, например,C:\ipreset.log. В Windows 2003, к слову, невозможно удалить и снова установить протокол TCP/IP в свойствах сетевого подключения, и в этом случае последняя команда весьма полезна.Более того, с помощью netsh можно сбросить и Winsock. Это делается в случаях, когда его конфигурация повреждена — при этом может не работать интернет, а программы — выдавать ошибку открытия сокета:
netsh winsock resetПосле этого нужно перезагрузить компьютер. Microsoft предупреждает о побочных эффектах, см. подробнее здесь.
Еще один интересный пример — разрешение удаленного управления компьютером в правилах встроенного брандмауэра Windows:
netsh firewall set service remoteadmin enableПодобным образом можно настраивать любые правила файрвола из скрипта, для этого есть все возможности. В Windows Server 2008, Windows Vista и Windows 7 вместо
netsh firewallследует использоватьnetsh advfirewall firewall.Дополнительная информация о netsh:
netsh ?Добавляя через пробел команды и знак вопроса, можно изучить возможности netsh более детально:
netsh interface ip set ?netsh firewall set ?Утилита может работать и в режиме командной строки, для этого нужно просто запустить netsh без параметров.
См. также: Netsh — Википедия.