А АTuesday, 2 August 2022

Пользуемся netsh.

Всем привет.

Несмотря на засилие Powershell утилита netsh все еще используется для настройки сетевых соединений в Microsoft Windows Server. Ниже я покажу парочку команд которые могут быть вам полезны.

Проверяем все правила брандмауэра Windows:

netsh advfirewall firewall show rule name=all

Безусловно, увидеть вообще все правила брандмауэра Windows бывает полезно. Однако чаще Вам нужны будут только те правила, которые относятся к текущей учетной записи пользователя операционной системы: 

netsh advfirewall show currentprofile

Также с помощью утилиты netsh можно проверить состояние всего сетевого интерфейса системы: 

netsh interface show interface

Вам могут понадобиться для работы индексы всех сетевых интерфейсов системы - как отключенных, так и подключенных: 

netsh interface ip show interfaces

Помимо всего прочего, с помощью команды netsh можно проверить все профили беспроводных соединений: 

netsh wlan show profile

Кроме того, с помощью netsh можно увидеть все доступные беспроводные соединения: 

netsh wlan show networks

Часто так бывает, что Вам доступны несколько беспроводных сетей, часть из которых — не обеспечивают надежного соединения. К счастью, команда netsh позволяет легко проверить следующую информацию обо всех доступных соединениях:

-тип радио;

-канал;

-базовые скорости;

-мощность сигнала и т. п.

netsh wlan show networks mode=bssid


Теперь давайте проверим, как отключиться от активного беспроводного соединения: 

netsh wlan disconnect

Конечно же, с помощью команды netsh можно не только отключиться, но и подключиться к беспроводной сети MyHOME: 

netsh wlan connect name="MyHOME"

Кроме того, Вы всегда можете посмотреть подробную информацию о Вашем беспроводном сетевом интерфейсе:

netsh wlan show interfaces

Также  бывает полезно проверить драйверы беспроводных сетевых интерфейсов:

netsh wlan show drivers

Безусловно, предусмотрена и возможность проверки текущих настроек прокси-сервера в Windows:

netsh winhttp show proxy

Также с помощью утилиты netsh можно проверить глобальные параметры TCP:

netsh interface tcp show global

Аналогичным образом можно проверить и глобальные параметры UDP: 

netsh interface udp show global

Предположим, что Вам нужно отключить какой-нибудь глобальный параметр, например, TCP RSS. TCP RSS (Receive Side Scaling) — это сетевая технология, позволяющая эффективно распределять обработку принимаемых по сети данных между несколькими процессорами в многопроцессорных платформах:

netsh interface tcp set global rss=disabled

Скорее всего, Вам может понадобиться функция, выводящая на экран список всех псевдонимов в сети:

netsh show alias

Помимо всего прочего, с помощью утилиты можно сбросить записи Winsock. Winsock (Windows Sockets API) — это интерфейс прикладного программирования (API), который определяет, каким способом сетевое программное обеспечение в операционной системе Microsoft Windows будет получать доступ к сетевым службам, включая TCP/IP:

netsh winsock reset catalog

Похожим образом можно сбросить стек TCP/IP до настроек по умолчанию:

netsh int ip reset reset.log

Не менее полезной функцией является возможность задать прокси в Windows:

netsh winhttp set proxy "myproxy.proxyaddress.com:8080" ";*.proxyaddress.com"

Ко всему прочему, утилита позволяет поменять IP-адрес сетевого интерфейса: 

netsh int ip set address "local area connection" static 192.168.1.101 255.255.255.0 192.168.1.254 1

Кроме того, утилита позволяет проверить настройки многоадресного вещания для всех сетевых интерфейсов системы. Многоадресное вещание (multicast) — это разновидность широковещания, при которой адресом назначения сетевых пакетов является мультикастная группа. Использовать мультикаст могут, к примеру, приложения для видеоконференцсвязи, рассылки электронной почты, радиовещания в сети:

netsh interface ip show joins

Довольно распространенной бывает ситуация, при которой Вам нужно открыть сетевой порт в брандмауэре Windows:

netsh advfirewall firewall add rule name="Open Remote Desktop" protocol=TCP dir=in localport=3389 action=allow

Также Вам может понадобиться функция добавления основного DNS-сервера в сетевой интерфейс:

netsh interface ip add dns name="Local Area Connection" addr=192.168.1.101

Предположим, что для работы Вам нужно сделать систему доступной для запросов команды ping:

netsh advfirewall firewall add rule name="All ICMP V4" dir=in action=allow protocol=icmpv4

Также в некоторых случаях Вам может быть нужно полностью отключить брандмауэр Windows для всех учетных записей пользователей:

netsh advfirewall set allprofiles state off

Скорее всего, не менее востребованной будет функция восстановления настроек брандмауэра Windows по умолчанию для всех учетных записей пользователей:

netsh advfirewall reset

В процессе исправления проблем с сетевым подключением Вам может потребоваться перехватить сетевые пакеты для анализа:

netsh trace start capture=yes tracefile=d:\trace.etl persistent=yes maxsize=4096

Конечно же, важно уметь не только запускать, но и останавливать процесс трассировки:

netsh trace stop


Еще раз вернемся к беспроводным сетям. Посмотрим все профили, которые хранятся на нашем компьютере(т.е. те, к которым мы имели когда-то подсоединение): 

netsh wlan show profile

И теперь давайте узнаем пароль для Wi-Fi сети «TEST01»:

netsh wlan show profile "TEST01" key=clear

В настройках безопасности в «Key content» Вы увидите пароль этой сети. Вы также можете использовать информацию для дальнейшей оптимизации Вашей сети Wi-Fi. Например, под информацией о профиле можно увидеть, что рандомизация для MAC отключена. Вы можете включить эту функцию, чтобы избежать отслеживания местоположения на основе MAC-адреса устройства, если вы пользуетесь Wi-Fi в общественных местах.

Чтобы посмотреть пароли всех сетей Wi-Fi, к которым Вы когда-либо подключались:

for /f "skip=9 tokens=1,2 delims=:" %i in ('netsh wlan show profiles') do @echo %j | netsh wlan show profiles %j key=clear | findstr "name Key"

На сегодня все.

Слава Украине!

No comments:

Post a Comment

А что вы думаете по этому поводу?

Версия на печать

Популярное