Иногда во время работы какой-либо системы, будь то домашний персональный компьютер или мощный сервер, обслуживающий множество подключений, полезно иметь под рукой инструмент, способный отобразить данные о сетевой активности. Для чего это может понадобиться? Для контроля трафика, вычисления приложений, нелегально выходящих в Сеть интернет, или же пользователей. Именно этим и занимается рассматриваемая нами утилита.
Что такое Netstat?
Это такое приложение, с помощью которого можно узнать, что происходит в данный момент в Сети. Для запуска используется командная строка. В ней же при запуске Netstat используются дополнительные ключи и параметры.
Стоит отметить, что название утилиты образовано из двух составляющих — network statistics, то есть сетевая статистика, что, в принципе, логично. Среди информации, которую показывает программа, можно выделить статистику подключений TCP, портов, маршрутизации.
Как Проверить Открытые Порты Windows и кто их секретно использует
Команды и ключи
Синтаксис ключей и параметров команды довольно обширен. Это позволяет получить сетевую статистику на самых разных уровнях. Далее пойдет описание команды Netstat, ее параметры и ключи:
- -a — запуск с данным параметром выведет на экран все активные подключения TCP, а также порты TCP и UDP, прослушиваемые системой;
- -e — отображение расширенной статистики Ethernet, например, о перемещении байтов и пакетов;
- -n — параметр позволяет показать активные подключения TCP с адресами и номерами портов;
- -o — так же, как и предыдущий ключ, выводит активные TCP подключения, но в статистику добавлены коды процессов, по ним уже можно точно определить, какое именно приложение использует подключение;
- -p — отображение информации по определенному протоколу, указанному в параметре. Среди значений может быть tcp, udp, tcpv6 и udpv6;
- -s — вывод на экран статистики по протоколу, по умолчанию отобразятся все известные типы;
- -r — данный ключ выведет содержимое таблицы маршрутизации IP, параметр равносилен использованию команды route;
- интервал — в общей строке команды можно использовать значение интервала, через который будет происходить отображение выбранной статистики; если он опущен, то информация отобразится всего один раз;
- /? — выведет справочную информацию по команде Netstat.
Использование Netstat в Windows
Для того чтобы вывести на экран командной строки все соединения, при этом разместив их на нескольких страницах, нужно использовать такой синтаксис: «-a | more». Если нужно сохранить всю статистику в определенный файл, нужно использовать « -a > C:имя файла». Таким образом, в файл, указанный по данному пути, будет записана вся собранная информация.
Результатом работы может выступать небольшая таблица, которая содержит следующие типы данных:
- Имя. Здесь указывается название найденного активного протокола.
- Локальный адрес. IP-адрес и порт, использующиеся локальным сервисом для создания соединения. Среди значений может встречаться 0.0.0.0, что означает любой доступный адрес или 127.0.0.1. Это говорит о локальной петле.
- Внешний адрес. IP и порт внешней службы в сети, с которой установлено соединение.
- Состояние. Показывает текущий статус соединения. Может принимать разные значения. Например, Listening говорит о том, что служба «слушает» и ждет входящего подключения. Established означает активное соединение.
Netstat, запущенная с ключами -a и -b, покажет все сетевые подключения, а также связанные с ними программы. Это очень удобно, если нужно вычислить, какая программа активно использует трафик и куда отсылает данные.
Дополнительные состояния соединений
Помимо указанных выше состояний соединений, имеются и дополнительные:
- closed — как следует из названия, соединение находится в закрытом виде;
- syn_sent — происходит активная попытка установить подключение;
- syn_received — показывает начальный этап синхронизации;
- close_wait — удаленный сервер отключен, и происходит завершение соединения.
Использование Netstat в Linux
Применение утилиты в среде Linux, по сути, мало чем отличается от Windows. Есть всего лишь небольшие отличия в параметрах команды. Описание команды Netstat и ее параметров с примерами:
- Чтобы отобразить все порты, нужно использовать команду — «netstat -a».
- Все то же самое, но только типа TCP — «-at».
- UDP порты — «-au».
- Отобразить в Netstat открытые порты — «-l». Их состояние будет отражено как Listening.
- Отобразить в Netstat открытые порты TCP — «netstat -lt.
- Вывод идентификатора процесса и его имени — «netstat -p».
- Показать статистику для отдельного протокола сети — «netstat -s».
Иногда, чтобы получить более полную информацию о каком-либо сетевом соединении, нужно совместить Netstat с некоторыи командами и утилитами Linux. Например, так:
netstat -ap | grep ssh
Данная строка выведет на экран список портов, которые в данный момент используется утилитой SSH. Если, наоборот, нужно узнать, какой процесс занимает определенный порт, можно использовать следующий синтаксис:
netstat -an | grep `:80`
Также для Netstat в Linux имеется универсальный набор ключей, способный отобразить все необходимое сразу. Выглядит он так: netstat -lnptux. В наборе данных будут отражены все открытые порты, протоколы TCP, UDP, UNIX Socket, названия процессов и их идентификаторов.
Несколько примеров для определения атаки типа DoS или DDoS
Следующая команда позволит узнать, сколько подключений активно на каждом IP-адресе:
netstat -naltp | grep ESTABLISHED | awk » | awk -F: » | sort -n | uniq -c
Определяем большое количество запросов с одного IP-адреса:
netstat -na | grep :80 | sort
Определяем точное количество запросов, полученных на одно соединение:
netstat -np | grep SYN_RECV | wc -l
При проведении DoS-атаки число, полученное в результате работы данной команды, должно быть довольно большим. В любом случае оно может зависеть от конкретной системы. То есть на одном сервере оно может быть одним, на другом — иным.
Заключение
В какой операционной системы бы не использовалась команда, она является незаменимым инструментом для сканирования, анализа и отладки сети. Ее активно используют системные администраторы всего мира.
Netstat можно использовать при заражении системы каким-либо вирусным программным обеспечением. Она способна показать все приложения с большой активностью подозрительного сетевого трафика. Это поможет на ранних этапах выявить вредное ПО и нейтрализовать его или же защитить сервер от нежелательного вторжения злоумышленников.
Выводы
В статье было дано подробное описание команды Netstat и её параметров и ключей. Полноценное использование программы возможно после нескольких этапов практики на реальном устройстве. Совмещение с другими командами придаст ей еще больше эффективности. Полный набор описания команд Netstat можно найти в руководстве на официальном сайте утилиты. Также стоит отметить, что при использовании в среде Linux команда Netstat устарела и вместо нее настоятельно рекомендуют использовать SS.
Источник: fb.ru
Как использовать команды Netstat для мониторинга сети в Windows?
Команда Netstat на cmd может быть очень полезна для определения состояния сети различных отдельных протоколов, таких как TCP, UDP, ICMP и версии IP, такие как IPv4 и IPv6. В этой статье мы также увидим другой вариант этой команды.
Описание команды NETSTAT
Netstat — это утилита командной строки Windows выводящая на дисплей состояние TCP-соединений. Команда netstat отображает статистику активных подключений TCP, портов, прослушиваемых компьютером, статистики Ethernet, таблицы маршрутизации IP, статистики IPv4 (для протоколов IP, ICMP, TCP и UDP) и IPv6 (для протоколов IPv6, ICMPv6, TCP через IPv6 и UDP через IPv6). Запущенная без параметров, команда netstat отображает подключения TCP.
Синтаксис и параметры команды NETSTAT
netstat [-a] [-e] [-n] [-o] [-p протокол] [-r] [-s] [интервал] , где
- -a — вывод всех активных подключений TCP и прослушиваемых компьютером портов TCP и UDP.
- -e — вывод статистики Ethernet, например количества отправленных и принятых байтов и пакетов. Этот параметр может комбинироваться с ключом -s.
- -n — вывод активных подключений TCP с отображением адресов и номеров портов в числовом формате без попыток определения имен.
- -o — вывод активных подключений TCP и включение кода процесса (PID) для каждого подключения. Код процесса позволяет найти приложение на вкладке Процессы диспетчера задач Windows. Этот параметр может комбинироваться с ключами -a, -n и -p.
- -p протокол — вывод подключений для протокола, указанного параметром протокол. В этом случае параметр протокол может принимать значения tcp, udp, tcpv6 или udpv6. Если данный параметр используется с ключом -s для вывода статистики по протоколу, параметр протокол может иметь значение tcp, udp, icmp, ip, tcpv6, udpv6, icmpv6 или ipv6.
- -s — вывод статистики по протоколу. По умолчанию выводится статистика для протоколов TCP, UDP, ICMP и IP. Если установлен протокол IPv6 для Windows XP, отображается статистика для протоколов TCP через IPv6, UDP через IPv6, ICMPv6 и IPv6. Параметр -p может использоваться для указания набора протоколов.
- -r — вывод содержимого таблицы маршрутизации IP. Эта команда эквивалентна команде route print.
- интервал — обновление выбранных данных с интервалом, определенным параметром интервал (в секундах). Нажатие клавиш CTRL+C останавливает обновление. Если этот параметр пропущен, netstat выводит выбранные данные только один раз.
- /? — отображение справки в командной строке.
Примеры команды NETSTAT
Пример работы команды Netstat на Windows 10 показан на рисунке выше, утилита работает на всех версиях операционных систем Windows.
- Для отображения справки по команде введите в командной строке netstat /?;
- Для вывода статистики Ethernet и статистики по всем протоколам введите следующую команду: netstat -e -s;
- Для вывода статистики только по протоколам TCP и UDP введите следующую команду: netstat -s -p tcp udp;
- Для вывода активных подключений TCP и кодов процессов каждые 5 секунд введите следующую команду: netstat -o 5.
Видео — Работа с утилитой NETSTAT
Источник: cmd4win.ru