Как заблокировать IP или сайт с помощью PowerShell в Windows 10

В данной статье показаны действия, с помощью которых можно настроить (установить) автоматическое получение IP-адреса на устройстве с операционной системой Windows 7, Windows 8.1, Windows 10.

Команда netstat для анализа сетевой активности

Этот способ без использования всяких программ, нам лишь понадобится командная строка. В Windows есть специальная утилита netstat, которая занимается анализом сетей, давайте использовать ее.

Желательно, чтобы командная строка была запущена от имени администратора. В Windows 10 можно нажать на меню Пуск правой кнопкой мыши и выбрать соответствующий пункт.

В командной строке вводим команду netstat и видим много интересной информации:

Мы видим соединения, в том числе, их порты, адреса, соединения активные и ожидающиеся. Это конечно круто, но нам этого мало. Нам бы узнать, какая программа использует сеть, для этого вместе с командной netstat можно использовать параметр –b, тогда команда будет выглядеть так:

netstat –b

Команда netstat для анализа сетевой активности

Теперь в квадратных скобочках будет видна утилита, которая пользуется интернетом.

Это не единственный параметр в этой команде, для отображения полного списка введите команду netstat –h.

Команда netstat для анализа сетевой активности

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

Но, как показывает практика, многие утилиты командной строки не дают той информации, которой хотелось бы видеть, да и не так это удобно. В качестве альтернативы мы будем использовать стороннее программное обеспечение – TCPView.

Проверка активных подключений с помощью PowerShell

Этот параметр использует netstat-команду для создания списка всего, что осуществляло интернет-соединение за определенное время. Вы можете сделать это на любом ПК под управлением Windows, начиная с Windows XP с пакетом обновления 2 (SP2) вплоть до Windows 10. Вы можете сделать это с помощью PowerShell или командной строки. Команда работает одинаково в обоих инструментах.

Если вы используете Windows 8 или 10, запустите PowerShell в качестве администратора, нажав на Win + X, а затем выбрав «PowerShell (Admin)» в меню «Power User». Если вы используете командную строку, вам также нужно будет запустить её как администратор. Если вы используете Windows 7, вам нужно нажать «Пуск», ввести «PowerShell» в поле поиска, щелкнуть правой кнопкой мыши результат и затем выбрать «Запуск от имени администратора». Если вы используете версию Windows до Windows 7, вам нужно запустить Командную строку как администратор.

В командной строке введите следующую команду и нажмите Enter.

netstat -abf 5 >

Мы используем четыре модификатора netstat-команды. –a говорит, что нужно показать все соединения и порты прослушивания. –b добавляет, что приложение выполняет подключение. –f отображает полное имя DNS для каждого варианта подключения, так что вы можете легко понять, куда адресованы соединения. 5 заставляет команду проверять подключения каждые пять секунд (чтобы более легко отслеживать, что происходит). Затем мы используем символ >, чтобы сохранить результаты в текстовом файле с именем «».

После запуска команды подождите несколько минут, а затем нажмите Ctrl + C, чтобы остановить запись данных:

Когда вы прекратите запись данных, вам нужно открыть файл , чтобы просмотреть результаты. Вы можете сразу открыть файл в Блокноте из приглашения PowerShell, просто набрав «», а затем нажмите Enter.

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

В файле перечислены все процессы на вашем компьютере (браузеры, IM-клиенты, программы электронной почты и т.д.), которые выполнили подключение к интернету в то время, пока была запущена netstat-команда. Это включает как установленные соединения, так и открытые порты, на которых приложения или службы прослушивают трафик. В файле также перечислены процессы, связанные с веб-сайтами.

Если вы видите имена процессов или адреса веб-сайтов, с которыми не знакомы, вы можете найти «что такое (имя неизвестного процесса)» в Google и посмотреть, что это такое. Если окажется, что это плохой сайт, вы можете снова использовать Google, чтобы узнать, как избавиться от него.

Блокировка IP или сайта с помощью PowerShell

Хотя блокировка диапазонов IP-адресов работает хорошо, блокировать веб-сайт или домен сложно. Это связано с тем, что к домену может быть подключено несколько IP-адресов и хотя вы можете заблокировать их, распознаватель DNS может каждый раз запрашивать другой IP-адрес.

Кроме того, иногда один и тот же IP-адрес может использоваться соответствующими службами и блокирование этого IP-адреса также будет означать блокирование других служб.

1] Блокировка IP или диапазона с помощью PowerShell

Используя эту команду, вы можете использовать один IP-адрес или диапазон IP-адресов. Выполните следующую команду в PowerShell.

New-NetFirewallRule -DisplayName «Block IP address» -Direction Outbound –LocalPort Any -Protocol TCP -Action Block -RemoteAddress Блокировка IP сайта PowerShell

IP-адрес и вы должны изменить на свои. IP указанный в конце параметра RemoteAddress, будет заблокирован. Любой веб-сайт или служба, которая разрешает это соединение, будет заблокирована.

Вы можете заменить опцию RemoteAddress опцией LocalAddress, если IP является IP-адресом локальной сети.

По завершении выполнения вы должны получить сообщение о состоянии: «Правило было успешно проанализировано из хранилища. (65536)». Откройте брандмауэр Windows и проверьте, доступна ли запись. После подтверждения вы сможете добавить больше с помощью PowerShell.

Брандмауэр блокировка ip

2] Блокировка веб-сайта или домена с помощью PowerShell

Поскольку функция не поддерживает блокировку URL, у нас есть два варианта. Сначала необходимо запросить все возможные IP-адреса этого домена и заблокировать их.

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

Resolve-DnsName «»

New-NetFirewallRule -DisplayName «Block IP address» -Direction Outbound –LocalPort Any -Protocol TCP -Action Block -RemoteAddress Подробнее о новых заменах Windows 10 в функций панели управления Как создать точку восстановления с помощью командной строки или PowerShell в Windows 10 Микрофон не работает в Microsoft Teams в Windows 10 Как активировать Windows 10 Обновления за ноябрь Windows 10 2020г., что нового Как исправить ошибку ShellExecuteEx failed

Читайте также:  Как отключить автоматическое обновление в windows 7

Диагностика разрешения имен (nslookup, dig)

Разобравшись с сетевой связностью и маршрутизацией приходим к следующему этапу — разрешение доменных имен. В большинстве случаев в работе с удаленными сервисами мы не используем IP-адреса, а указываем доменные имена удаленных ресурсов. За перевод символических имен в IP-адреса отвечает служба DNS — это сеть серверов, которые содержат актуальную информацию о соответствии имен и IP в пределах доверенных им доменных зон.

Самый простой способ проверить работает ли разрешение имен — запустить утилиту ping с указанием доменного имени вместо IP-адреса (например, ping ). Если ответные пакеты от удаленного сервера приходят, значит все работает как надо. В противном случае нужно проверить прописан ли DNS-сервер в сетевых настройках и удается ли получить от него ответ.

Способы выяснения какой DNS-сервер использует наш сервер различаются в зависимости от используемой версии и дистрибутива ОС Linux. Например, если ОС используется Network Manager для управления сетевыми интерфейсами (CentOS, RedHat и др.), может помочь вывод команды nmcli:

Диагностика разрешения имен (nslookup, dig)

Скриншот №7. Команда nmcli

В настройках сетевого интерфейса, в разделе DNS configuration, мы увидим IP-адрес сервера. В Ubuntu и выше, использующих Netplan, используем команду systemd-resolve —status:

Скриншот №8. Команда systemd-resolve —status

Используемый сервер также будет указан в настройках интерфейса, в разделе DNS Servers. В более старых версиях Ubuntu потребуется проверить содержимое файлов /etc/ и /etc/network/interfaces. Если сервер не указан, воспользуйтесь статьей для ОС Ubuntu или CentOS, чтобы скорректировать настройки.

Проверить работу сервиса разрешения имен нам помогут утилиты nslookup или dig. Функционально они почти идентичны: G-вывод утилиты dig содержит больше диагностической информации и гибко регулируется, но это далеко не всегда нужно. Поэтому используйте ту утилиту, которая удобна в конкретной ситуации. Если эти команды недоступны, потребуется доставить пакеты на CentOS/RedHat:

yum install bind-utils

для Debian/Ubuntu:

sudo apt install dnsutils

Диагностика разрешения имен (nslookup, dig)

После успешной установки сделаем тестовые запросы:

dig

Скриншот №9. Тестовые запросы

В разделе Answer Section видим ответ от DNS сервера — IP-адрес для A-записи с доменным именем Разрешение имени работает корректно:

nslookup

Скриншот №10. Подтверждение корректной работы

Аналогичный запрос утилитой nslookup выдает более компактный вывод, но вся нужная сейчас информация в нем присутствует.

Диагностика разрешения имен (nslookup, dig)

Что же делать, если в ответе отсутствует IP-адрес? Возможно, DNS-сервер недоступен. Для проверки можно отправить тестовый запрос на другой DNS-сервер. Обе утилиты позволяют эти сделать. Направим тестовый запрос на DNS-сервер Google:

dig @8.8.8.8

Скриншот №11. Отправка тестового запроса 1

nslookup 8.8.8.8

Скриншот №12. Отправка тестового запроса 2

Диагностика разрешения имен (nslookup, dig)

Если имена разрешаются публичным DNS-сервером корректно, а установленным по умолчанию в ОС нет, вероятно, есть проблема в работе этого DNS-сервера. Временным решением данной проблемы может быть использование публичного DNS-сервера в качестве сервера для разрешения имен в операционной системе. В том случае, если разрешение имен не работает ни через локальный, ни через публичный DNS сервер — стоит проверить не блокируют ли правила файрвола отправку на удаленный порт 53 TCP/UDP пакетов (именно на этом порту DNS-серверы принимают запросы).

Читайте также:  11 способов создания загрузочной флешки Windows 10

Часто используемые параметры:

  • nslookup имя сервер — разрешить доменное имя, используя альтернативый сервер;
  • nslookup –type=тип имя — получить запись указанного типа для доменного имени (например, nslookup -type=mx – получить MX-записи для домена );
  • dig @сервер имя — разрешить доменное имя, используя альтернативый сервер;
  • dig имя тип — получить запись указанного типа для доменного имени (например, dig mx — получить MX-записи для домена ).

Как обычно, полный набор опций и параметров для указанных утилит можно найти во встроенной справке операционной системы, используя команду man.

Поделиться Оценить

Средняя оценка: 5.0 Оценили: 1

Диагностика разрешения имен (nslookup, dig)

220140 Минск ул. Домбровская, д. 9 +375 (173) 88-72-49

  • 700 300 ООО «ИТГЛОБАЛКОМ БЕЛ»220140 Минск ул. Домбровская, д. 9 +375 (173) 88-72-49
  • 700 300 ООО «ИТГЛОБАЛКОМ БЕЛ»
  • 700 300
  • Как настроить автоматическое получение IP-адреса используя «Параметры»

    Данный способ применим только в операционной системе Windows 10.

    Windows 10 позволяет изменить параметры IP-адреса с помощью приложения «Параметры» для беспроводных и проводных адаптеров.

    Как настроить автоматическое получение IP-адреса используя «Параметры»

    Настройка автоматического получения IP-адреса для Wi-Fi адаптера

    Чтобы настроить автоматическое получение IP-адреса для Wi-Fi адаптера, последовательно откройте:

    Пуск ➯ Параметры ➯ Сеть и Интернет ➯ Wi-Fi

    Как настроить автоматическое получение IP-адреса используя «Параметры»

    В правой части окна нажмите на текущее Wi-Fi подключение.

    Затем в разделе «Параметры IP» нажмите кнопку Редактировать.

    В окне «Изменение параметров IP», в раскрывающемся меню выберите пункт Автоматически (DHCP)

    Как настроить автоматическое получение IP-адреса используя «Параметры»

    Затем нажмите кнопку Сохранить.

    После выполнения этих шагов конфигурация сетевого стека будет сброшена, и устройство запросит IP-адрес с DHCP-сервера (обычно маршрутизатора).

    Настройка автоматического получения IP-адреса для Ethernet адаптера

    Как настроить автоматическое получение IP-адреса используя «Параметры»

    Возможность изменения параметров сетевого протокола для Ethernet адаптера доступна начиная с Windows 10 версии 1903 и в более поздних версиях.

    Чтобы настроить автоматическое получение IP-адреса для адаптера Ethernet, последовательно откройте:

    Пуск ➯ Параметры ➯ Сеть и Интернет ➯ Ethernet

    Как настроить автоматическое получение IP-адреса используя «Параметры»

    В правой части окна нажмите на текущее Ethernet подключение.

    Затем в разделе «Параметры IP» нажмите кнопку Редактировать.

    В окне «Изменение параметров IP», в раскрывающемся меню выберите пункт Автоматически (DHCP)

    Как настроить автоматическое получение IP-адреса используя «Параметры»

    Затем нажмите кнопку Сохранить.

    После выполнения этих шагов конфигурация сетевого стека будет сброшена, и устройство запросит IP-адрес с DHCP-сервера (обычно маршрутизатора).

    Используя рассмотренные выше действия, можно настроить (установить) автоматическое получение IP-адреса на устройстве с операционной системой Windows 7, Windows 8.1, Windows 10.

    Как настроить автоматическое получение IP-адреса используя «Параметры»

    Сетевые интерфейсы в Windows [GUI/CMD/PowerShell]

    В этой статье мы рассмотрим, настройку сетевых интерфейсов в Windows, а именно получение динамических сетевых настроек[по DHCP] и задание/смену статических сетевых настроек[вручную], тремя способами — в графическом интерфейсе[GUI], в командной строке[CMD] и средствами PowerShell.

    Моя локальная сеть:

    • Доступные IP-адреса: 10.0.0.1 —
    • Маска подсети:
    • Шлюз по умолчанию: 10.0.0.1
    • DNS-сервер: 10.0.0.1

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

    • Диапазон выдаваемых адресов:
    • Маска подсети:
    • Шлюз по умолчанию: 10.0.0.1
    • DHCP-сервер: 10.0.0.1
    • DNS-серверы: 8.8.8.8, 8.8.4.4

    Для разнообразия взял разные DNS-сервера.