Я писал различные статьи о Netsh, другие авторы тоже публиковали свои статьи о Netsh. Это просто показывает то, насколько важная и инновационная утилита Netsh на самом деле. В этой статье я расскажу о десяти Netsh командах, которые должен знать каждый администратор Windows. На мой взгляд, Netsh настолько мощная и гибкая; я просто не могу выбрать ‘самые важные’ Netsh команды, поскольку их важность будет разной для разных администраторов. Однако я могу выбрать десять команд, которые, на мой взгляд, либо отображают самую важную информацию, либо помогут вам в трудной ситуации. Следует учитывать, что эти команды можно записывать в сценарии (поскольку они все представляют собой инструменты командной строки), поэтому все, что вы можете сделать с помощью отдельной команды на одной машине, вы можете записать в сценарий, чтобы использовать эту команду на всех машинах вашей сети.
Что такое Netsh?
Microsoft Windows Netsh – это утилита командной строки. С помощью Netsh вы можете просматривать или изменять конфигурацию сети на ваших локальных или удаленных машинах. Вы можете вручную запускать команды Netsh или создавать файлы сценариев для автоматизации процесса. Эти команды вы можете запускать не только на своих локальных машинах, но и на удаленных компьютерах по сети.
Netsh также предоставляет функцию работы со сценариями, которая позволяет вам запускать группу команд в режиме очередности на определенном компьютере. Благодаря netsh вы можете сохранять сценарии конфигурации в текстовые файлы для архивации, или в целях настройки других машин.
Netsh не является новой утилитой в Windows Server 2008 или Windows Vista. Netsh существует уже довольно давно. Команды Netsh доступны в Windows 2000, XP и Windows Server 2003. Однако новым является количество опций для Netsh в Windows Server 2008 и Vista. К тому же я считаю, что Netsh не используется в должной мере администраторами, и большинство администраторов не знают о новых усовершенствованиях этой утилиты в Windows Server 2008 и Vista. Я надеюсь просветить администраторов Windows в области новых функций netsh и мощи данной утилиты в этой статье.
Какая разница между Windows Server 2008 netsh и Windows XP?
Есть несколько различий даже на базовом командном уровне между Windows XP версией netsh и Windows Server 2008 netsh. Для сравнения различий я запущу команды ‘netsh /?‘ в каждой операционной системе. Хотя Windows XP имеет ‘маршрутизацию’ в списке контекста, а Windows Server 2008 нет, это единственный элемент контекста, которого не достает Win 2008 (но который включен в Win 2008 RAS). В остальном Windows Server 2008 имеет следующие контекстные опции netsh, которые Windows XP не имеет:
- dhcp
- dhcpclient
- http
- ipsec
- lan
- nap
- netio
- rpc
- winhttp
Таким образом, как вы видите, в Window Server 2008 имеется гораздо больше контекстных опций.
Итак, давайте перейдем к нашим десяти командам Netsh, которые должен знать каждый администратор.
№10 ‘ Как получить помощь
Каждый администратор Windows должен знать, как получить помощь с netsh. Это очень просто, просто используем ‘/?’ команду, которая предоставит нам руководство о том, что мы пытаемся сделать. Например, что бы посмотреть все netsh варианты (категории опций), просто пишем: netsh /?
Увеличить
Рисунок 1: Результаты команды netsh /?
Отсюда вы можете выбирать контекст, и будете проведены через настройки или вам будут показаны опции этого контекста. К примеру, допустим, что я ввел команду netsh lan /?, в результате я увижу:
Рисунок 2: Результаты команды netsh lan /?
Отсюда я продолжу работать со справкой путем ввода команды -
netsh lan show /?
Здесь я смогу отобразить интерфейсы с помощью -
netsh lan show interfaces
Способность разбираться во многих командах netsh, используя /?, это очень ценный навык.
№9 ‘ Предоставление имен и мандатов удаленной машины
Если вы запустите netsh /?, то увидите, что у вас есть возможность предоставить имя, IP адрес и мандаты удаленной машины, на которой вы выполняете команды netsh. Вариантами здесь будут ‘-r’ для машины, ‘-u’ для имени пользователя и ‘-p’ для пароля. Вот пример:
netsh -r WinXP-1 -u winxp-1\administrator -p My!Pass1 interface ip show config
Как вы видите, я предоставил имя удаленной машины, имя удаленного пользователя и пароль, что позволило мне выполнять эту команду через сеть. Вы можете выполнять любые команды, показанные здесь, через сеть, если удаленные машины поддерживают эти команды (различные ОС будут использовать различные варианты команд).
№8 ‘ Запуск Netsh в интерактивном режиме или с помощью сценария
Netsh можно запустить в интерактивном режиме (путем простого ввода команд вручную) или с помощью сценария. Допустим, вы хотите выполнить несколько отдельных команд на локальной или удаленной машине. Вы можете начать с простого ввода netsh в командную строку и увидите:
netsh>
Отсюда вы можете вводить любые команды netsh, какие захотите, или даже сказать netsh подключиться к удаленной машине.
В противном случае вы можете использовать netsh ‘f <scriptfile> и указать сценарий, который netsh будет использовать.
№7 ‘ Открыть порт на своем брандмауэре
С помощью netsh вы можете быстро и легко открыть порт на своем брандмауэре, если знаете нужную команду. Вот пример открытия порта 445-
netsh firewall set portopening tcp 445 smb enable
Если команда выполнена успешно, вы должны получить ответ ‘Ok.’
№6 ‘ Экспортирование текущей конфигурации сети в файл и его импортирование
С помощью netsh экспортирование и импортирование конфигурации IP адресов является очень простой задачей, в отличие от работы с графическим GUI интерфейсом. Чтобы экспортировать свою конфигурацию, просто выполните команду:
netsh ‘c interface dump > test.txt
Рисунок 3: Экспортирование конфигурации IP адресов и просмотр файла
Позже на этой или другой машине вы сможете импортировать данную конфигурацию с помощью команды -
netsh ‘f test.txt
№5 ‘ Пробуем самые последние опции Netsh
Как я уже говорил, существует много новых функций в Windows Server 2008, связанных с netsh.
Вот новые категории, которые я вижу на своей системе Windows Server 2008:
- dhcp
- dhcpclient
- http
- ipsec
- lan
- nap
- netio
- rpc
- winhttp
Например, вы можете настраивать не только своего DHCP клиента, но и DHCP сервер. Вы можете настраивать IPSec шифрование, клиента NAP и многое другое!
Когда вы добавляете дополнительные роли и функции на сервер, у вас будет появляться дополнительный контекст. Например, если вы добавите сервер сетевой политики к Windows Server 2008, у вас появится ‘nps’ в качестве сетевого netsh контекста, который можно будет настраивать.
Для официальной документации о Microsoft Windows Server 2008 netsh посетите этот URL:
Microsoft TechNet- Windows Server 2008 -Netsh Technical Reference
№4 ‘ Диагностика TCP/IP и восстановление интерфейса
Существует несколько действий, которые вы можете осуществить с netsh для диагностирования и восстановления вашего TCP/IP сетевого интерфейса. Вот некоторые примеры:
- Восстановление всех конфигурации стека IP протоколов вашего интерфейса и отправка результатов в файл лога - netsh int ipv4 reset resetlog.txt
- Установка TCP/IP протокола - netsh int ipv4 install
- Деинсталляция TCP/IP протокола - netsh int ipv4 uninstall
№3 ‘ Настройка брандмауэра Windows Advanced Firewall
В своей предыдущей статье, Как настраивать Windows 2008 Advanced Firewall с помощью NETSH CLI, я рассказывал о том, как вы можете настраивать новый Windows (двунаправленный) брандмауэр с помощью нового сетевого контекстного параметра advfirewall, используя netsh в Windows Server 2008 и Windows Vista. Конечно, вы можете также настраивать и традиционный Windows брандмауэр. Вот некоторые примеры:
- Показать все правила брандмауэра - netsh advfirewall firewall show rule name=all
- Удалить входящее правила расширенного брандмауэра для порта 21 - netsh advfirewall firewall delete name rule name=all protocol=tcp localport=21
- Экспортировать параметры расширенного брандмауэра Windows Advanced Firewall - netsh advfirewall export ‘c:\advfirewall.wfw’
Возможно самой распространенной командой, которую вы захотите использовать для включения и отключения своего брандмауэра, будет команда:
netsh firewall set opmode disable
or
netsh firewall set opmode enable
Однако для более специфичной информации и примеров прочтите мою статью, указанную выше.
№2 ‘ Настройка параметров беспроводного подключения
В другой своей статье, Настройка беспроводных соединений Windows Server 2008 и Windows Vista из CLI с помощью netsh wlan, я рассказывал о том, как вы теперь можете настраивать параметры беспроводного подключения с помощью netsh в Windows Server 2008 и Windows Vista. Вот некоторые примеры:
- Подключиться к уже определенной беспроводной сети - netsh wlan connect ssid=‘mySSID’ name=‘WLAN-Profil1’
- Показать текущие параметры беспроводной сети - netsh wlan show settings
- Добавить экспортированный профиль беспроводной сети - netsh wlan add profile filename="Wireless Network Connection-BOW.xml"
Однако для более подробной информации прочтите мою статью, указанную выше.
№1 ‘ Настройка IP адреса и параметров сетевого интерфейса
Поскольку netsh – это ‘network shell – сетевая оболочка’, самым лучшим способом ее использования будет настройка базовых параметров вашей сети. Вот некоторые примеры:
- Показать IP адрес - netsh interface ip show config
- Установить интерфейс на использование DHCP для своей конфигурации IP адресов - netsh interface ip set address name="Local Area Connection" source=dhcp
- Установить интерфейс на использование статичного IP адреса для IP конфигурации - netsh interface ip set address "Local Area connection" static 10.0.0.9 255.0.0.0 10.0.0.1 1
- Или добавить запись DNS Server ‘ netsh interface ip add dnsserver "Local Area Connection" 10.0.0.1
Для дополнительных примеров настройки базовых параметров конфигурации сети с помощью Netsh прочтите статью - Petri Knowledgebase ‘ How can I configure TCP/IP settings from the command prompt?
В заключение
Утилита командной строки netsh всегда была очень мощным инструментом для администраторов Windows. А благодаря новым функциям, добавленным в Windows Server 2008 и Windows Vista, netsh стала еще более мощной утилитой. В этой статье вы увидели ее мощь в действии на примерах, и я предложил 10 команд, которые вы должны знать в netsh.
Для дополнительной информации о Netsh смотрите следующие статьи: