Showing posts with label netsh. Show all posts
Showing posts with label netsh. Show all posts

Wednesday, 9 October 2024

Параметри WiFi.

Всім привіт.

Ви напевно знаєте, що я люблю користуватися BGInfo. Впевнений що це дуже корисна утіліта для користувача. На днях я вирішив переписати блок коду щодо отримання параметрів мережі, особливо бездротової: назву SSID, номер каналу, рівень сигналу та швидкість передачі даних.

Перший запит відбувається просто:

Get-NetAdapter -Physical | where Status -eq "Up" | select Name,LinkSpeed

а решту параметрів отримуємо з вихлопу netsh wlan show interfaces. І ось тут є цікавинка - LinkSpeed від першого запиту то значення передачі даних адаптера. Як на мене дивно, бо в серфінгу по Інтернет трафік на отримання даних переважає трафик передачі на порядок. Навіщо тоді мені така LinkSpeed? Тому швидкість передачі та отримання я також беру з netsh.

Ось мій код:

 $a = Get-NetAdapter -Physical | where Status -eq "Up" | select Name,LinkSpeed

if (($a.Name -like "Wi-Fi*") -or ($a.Name -like "Беспроводная*")) {

    # It's a Wi-Fi interface

    $b = (get-netconnectionProfile).Name 

    $if01 = (netsh wlan show interfaces)

    $c = $if01 -Match '^\s+Channel' -Replace '^\s+Channel\s+:\s+',''

    $d = $if01 -Match '^\s+Signal' -Replace '^\s+Signal\s+:\s+',''

    $receiveRate = $if01 -Match '^\s+Receive rate \(Mbps\)' -Replace '^\s+Receive rate \(Mbps\)\s+:\s+', ''

    $receiveRate = "$receiveRate Mbps"

    $transmitRate = $if01 -Match '^\s+Transmit rate \(Mbps\)' -Replace '^\s+Transmit rate \(Mbps\)\s+:\s+', ''

    $transmitRate = "$transmitRate Mbps"


# це якщо бажаєте вивести значення в один рядок

#$a.Name+':' +$b +',Ch:' +$c+',Up:' +$d+ ',In:' +$receiveRate+',Out:' +$transmitRate

    Write-Host $a.Name':'$b

    Write-Host 'Channel:'$c

    Write-Host 'Level:'$d

    Write-Host 'Input:'$receiveRate

    Write-Host 'Output:'$transmitRate

    }

else {

    # It's an Ethernet interface

    $a.Name+': '+$a.LinkSpeed

}

 А так виглядає результат:

Щасти.


Saturday, 21 September 2024

Wi-Fi хотспот на Windows.

Всім привіт. 

Я вже казав вам що в разі потреби можно швидко зробити WiFi хотспот зі свого ноутбука. Але є нюанс, який ви маєте перевірити завчасно.

Для створення власної точки доступу необхідно використовувати функцію Wireless Hosted Network. Саме така мережа відповідає за роздачу Інтернету з ноутбука. Але спочатку необхідно перевірити її підтримку. Нам знадобиться лише команда CMD (командний рядок), запущений з правами адміністратора. Для перевірки пристрою набираємо у командному рядку команду:

netsh wlan show drivers

Для нас у цьому результаті необхідно дізнатися значення лише одного параметра: Hosted network supported.


Якщо параметр має значення "No", необхідно перевірити в "Диспетчер завдань" пристрій адаптера WIFI. Якщо навіть після успішного встановлення драйвера пристрою значення не змінюється, пробуємо оновити драйвер. Але це трохи лотерея.

Tuesday, 17 September 2024

Wi-Fi report in Windows.

Всім привіт.

Колись давно я проводив діагностику мережі з Get-NetView. Але сама Windows 11 для цього має функцію для пакетної генерації детального звіту про історію підключень бездротової мережі (Wi-Fi) вашого комп'ютера. 

Звіт містить детальну інформацію про:

1. Мережі Wi-Fi, до яких ви підключалися

2. Тривалість сеансу

3. Будь-які помилки які трапились в роботі мережі

4. Доступні мережні адаптери 

5. Інші дані, виведені кількома командами в інтерфейсі командного рядка (наприклад командний рядок або PowerShell.)

Тобто якщо ви навчитеся користуватися цим інструментом, він може бути корисним для діагностики проблем з підключенням Wi-Fi.

Як створити звіт про безпроводову мережу в Windows? 

Виявляється це надто просто. Можливо ця команда з'явилася нещодавно бо раніше я її в netsh не помічав. Запустіть від імені Адміністратора вікно командного рядка та введіть наступну команду, а потім натисніть клавішу Enter :

netsh wlan show wlanreport

Це все, звіт готовий!  Знайдете його тут C:\ProgramData\Microsoft\Windows\WlanReport



Звіт про безпроводову мережу створено у вигляді HTML-файлу, який можна відкрити у веб-браузері. У звіті відображаються всі події Wi-Fi за останні три дні та групуються за сеансами підключення Wi-Fi. Він також відображає результати кількох сценаріїв командного рядка, пов'язаних із мережею, і список усіх мережних адаптерів на вашому комп'ютері.

Thursday, 29 February 2024

Работа с сетью в командной строке Windows, #3.

Всем привет.

Продолжаем рассматривать сетевые утилиты командной строки Windows, сегодня у нас в фокусе NETSTAT и другая мега-утилита NET.

Утилита NETSTAT

    Утилита netstat.exe присутствует во всех версиях Windows, однако, существуют некоторые отличия используемых параметров командной строки и результатов ее выполнения, в зависимости от операционной системы. Используется для отображения TCP и UDP -соединений, слушаемых портов, таблицы маршрутизации, статистических данных для различных протоколов. 

Синтаксис:

netstat[-a] [-e] [-n] [-o] [-pProtocol] [-r] [-s] [Interval]

-a - отображение всех активных соединений по протоколам TCP и UDP, а также, списка портов, которые ожидают входящие соединения (слушаемых портов). 

-b - отображение всех активных соединений по протоколам TCP и UDP, а также, списка портов, которые ожидают входящие соединения (слушаемых портов) с информацией об именах исполняемых файлов. Данный параметр применим для операционных систем Widows XP и старше.

-e - отображение статистики Ethernet в виде счетчиков принятых и отправленных байт и пакетов. 

-n - отображение номеров портов в виде десятичных чисел.

-o - отображение соединений, включая идентификатор процесса (PID) для каждого соединения. 

-p Protocol - отображение соединений для заданного протокола. Протокол может принимать значения tcp, udp, tcpv6, udpv6 . При использовании совместно с параметром -s в качестве протокола можно задавать tcp, udp, icmp, ip, tcpv6, udpv6, icmpv6, ipv6.

-s - отображение статистических данных по протоколам TCP, UDP, ICMP, IP , TCP over IPv6, UDP over IPv6, ICMPv6, и IPv6 . Если задан параметр-p , то статистика будет отбражатися только для выбранных протоколов.

-r - отображение таблицы маршрутов. Эквивалент команды route print 

Interval - интервал обновления отображаемой информации в секундах. 

-v - отображать подробную информацию. 

/? - отобразить справку по использованию netstat 

При использовании утилиты netstat.exe удобно пользоваться командами постраничного вывода (more), перенаправления стандартного вывода в файл ( > ) и поиска текста в результатах (find). 

netstat -a | more - отобразить все соединения в постраничном режиме вывода на экран.

netstat -a > C:\netstatall.txt - отобразить все соединения с записью результатов в файл C:\netstatall.txt.

netstat -a | find /I "LISTENING" - отобразить все соединения со статусом LISTENING. Ключ /I в команде find указывает, что при поиске текста не нужно учитывать регистр символов. 

netstat -a | find /I "listening" > C:\listening.txt - отобразить все соединения со статусом LISTENING с записью результатов в файл C:\listening.txt.

Monday, 26 February 2024

Работа с сетью в командной строке Windows, #2.

Всем привет.

Продолжаем рассматривать сетевые утилиты командной строки Windows, сегодня у нас в фокусе NBTSTAT и мега-утилита netsh.

Утилита NBTSTAT

Команда NBTSTAT позволяет получить статистику протокола NetBIOS over TCP/IP (NetBT), таблицу имен локальных и удаленных компьютеров и содержимое кэш NetBIOS имен. Применение NBTSTAT позволяет принудительно обновить кэш NetBIOS-имен компьютеров и имена, зарегистрированные с помощью серверов Windows Internet Name Service (WINS). 

Синтаксис: 

nbtstat[-aRemoteName] [-AIPAddress] [-c] [-n] [-r] [-R] [-RR] [-s] [-S] [Interval]

Параметры командной строки:

-a RemoteName - отображает таблицу имен удаленного компьютера. NetBIOS-имена соответствуют перечню NetBIOS-приложений, выполняющихся на удаленном компьютере.

-A IPAddress - то же самое, что и в предыдущем случае, но вместо имени удаленного компьютера используется его IP-адрес

. -c - отображает кэш имен NetBIOS и соответствующих им IP-адресов.

-n - отображает таблицу NetBIOS-имен на локальном компьютере. Состояние "Зарегистрирован" означает, что имя зарегистрировано с использованием широковещательного запроса или с помощью сервера WINS.

-r - отображает статистику разрешения NetBIOS-имен. На компьютерах под управлением Windows XP и старше, выдается раздельная статистика о разрешении имен с помощью широковещетельной рассылки и с помощью сервера имен WINS.

-R - очистка кэш NetBIOS-имен и загрузка данных из секции #PRE файла LMHOSTS. 

-RR - очистка кэш NetBIOS - имен на локальном компьютере и их повторная регистрация с использованием сервера WINS. 

-s - отображает статистику NetBIOS - сессий между клиентом и сервером и NetBIOS-имена удаленных узлов.

-S - отображает статистику сессий между клиентом и сервером и IP-адреса удаленных узлов. 

Interval - интервал обновления отображаемых данных в секундах. Для прекращения автоматического обновления используется комбинация клавиш CTRL+C 

/? - отобразить справку по использованию NBTSTAT. 


Примеры использования: nbtstat -n - вывести список зарегистрированных NetBIOS-имен на локальном компьютере.

nbtstat -a SERVER - вывести список зарегистрированных NetBIOS-имен на компьютере SERVER.

nbtstat -A 192.168.1.1 - вывести список зарегистрированных NetBIOS-имен на удаленном компьютере с IP-адресом 192.168.1.1 .

nbtstat -RR - выполнить очистку и перерегистрацию NetBIOS-имен на локальном компьютере.

Sunday, 25 February 2024

Работа с сетью в командной строке Windows, #1.

Всем привет.

При работе с сетью в командной строке Windows большинство сетевых утилит для полноценной работы требуют наличия административных привилегий. Для операционных систем семейства Windows достаточно того, чтобы пользователь работал под учетной записью члена группы администраторов. В среде операционных систем Widows интерпретатор cmd.exe должен быть запущен для выполнения с использованием пункта контекстного меню "Запустить от имени администратора". Командные файлы, в которых используются сетевые утилиты, также должны выполняться в контексте учетной записи с привилегиями администратора. 

В этом цикле статей будут представлены следующие сетевые утилиты командной строки для получения информации о сетевых настройках, выполнения операций по конфигурированию и диагностике сети: arp, ipconfig, getmac, nbtstat, netsh, netstat, net, nslookup, pathping, ping, route, telnet и tracert.


Утилита ARP

Утилита командной строки ARP.EXE присутствует во всех версиях Windows и имеет один и тот же синтаксис.

Команда ARP позволяет просматривать и изменять записи в кэш ARP (Address Resolution Protocol - протокол разрешения адресов), который представляет собой таблицу соответствия IP-адресов аппаратным адресам сетевых устройств. Аппаратный адрес - это уникальный, присвоенный при изготовлении, 6-байтный адрес сетевого устройства, например сетевой карты. Этот адрес также часто называют MAC-адресом (Media Access Control - управление доступом к среде) или Ethernet-адресом. В сетях Ethernet передаваемые и принимаемые данные всегда содержат MAC-адрес источника (Source MAC) и MAC-адрес приемника (Destination MAC). Два старших бита MAC-адреса используются для идентификации типа адреса:

- первый бит - одиночный (0) или групповой (1) адрес.

- второй бит - признак универсального (0) или локально администрируемого (1) адреса. 


Следующие 22 бита адреса содержат специальный код производителя MFG или OUI - универсальный код организации. 

Другими словами, любое сетевое устройство имеет аппаратный адрес, состоящий из 2- х частей. Старшую часть MAC - адреса, централизованно выделяемую по лицензии каждому производителю сетевого оборудования. Например, 00:E0:4C - для сетевых устройств REALTEK SEMICONDUCTOR CORP. Крупным производителям сетевого оборудования обычно принадлежит несколько диапазонов OUI . И младшую часть MAC-адреса, которая формируется при производстве оборудования, и уникальна для каждого экземпляра устройства. 

Отображение IP-адресов (формируемых программным путем), в аппаратные адреса, выполняется с помощью следующих действий:

- в сеть отправляется широковещательный запрос (ARP-request), принимаемый всеми сетевыми устройствами. Он содержит IP и Ethernet адреса отправителя, а также, целевой IP-адрес, для которого выполняется определение MAC-адреса.

- каждое устройство, принявшее запрос проверяет соответствие целевого IP-адреса, указанного в запросе, своему собственному IP-адресу. При совпадении, отправителю передается ARP-ответ (ARP-Reply), в котором содержатся IP и MAC адреса ответившего узла. Кадр с ARP-ответом содержит IP и MAC адреса как отправителя, так и получателя-составителя запроса.

- информация, полученная в ARP-ответе, заносится в ARP-кэш и может использоваться для обмена данными по IP-протоколу для данного узла. ARP-кэш представляет собой таблицу в оперативной памяти, каждая запись в которой содержит IP, MAC и возраст их разрешения. Возраст записи учитывается для того, чтобы обеспечить возможность повторного выполнения процедуры ARP при каком либо изменении соответствия адресов.


Синтаксис ARP.EXE:

arp[-a [InetAddr] [-NIfaceAddr]] [-g [InetAddr] [-NIfaceAddr]] [-dInetAddr [IfaceAddr]] [-sInetAddr EtherAddr [IfaceAddr]]

-a[ InetAddr] [ -NIfaceAddr] - ключ -a - отображает текущую таблицу ARP для всех интерфейсов. Для отображения записи конкретного IP-адреса используется ключ -a с параметром InetAdd , в качестве которого указывается IP-адрес. Если узел, отправляющий ARP-запрос имеет несколько сетевых интерфейсов, то для отображения таблицы ARP нужного интерфейса, можно использовать ключ -N с параметром IfaceAddr, в качестве которого используется IP-адрес интерфейса.

-g[ InetAddr] [ -NIfaceAddr] ключ -g идентичен ключу -a. 

-d InetAddr[ IfaceAddr] - используется для удаления записей из ARP-кэш. Возможно удаление по выбранному IP или полная очистка ARP кэш. Для удаления всех записей, вместо адреса используется символ * Если имеется несколько сетевых интерфейсов, то очистку можно выполнить для одного из них, указав в поле IfaceAddr его IP .

-s InetAddr EtherAddr [ IfaceAddr] - используется для добавления статических записей в таблицу ARP. Статические записи хранятся в ARP-кэш постоянно. Обычно, добавление статических записей используется для сетевых устройств, не поддерживающих протокол ARP или не имеющих возможности ответить на ARP- запрос.

/? - получение справки по использованию arp.exe. Аналогично - запуск arp.exe без параметров. 

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

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

Популярное