Команда route примеры netstat exe. Команда NETSTAT - отображение статистики сетевых соединений. Неподдерживаемые системой семейства адресов

Netstat это очень полезная утилита, которую некоторые системные администраторы используют каждый день, а некоторым приходится прибегать к ней только для диагностики неисправностей. Но в любом случае понимать эту утилиту и уметь её использовать очень полезно.

Команда имеет всего 10 параметров, из которых наверно самым часто используемым является параметр -a , который отображает все подключения и используемые порты. Однако даже указания параметров netstat от отображает довольно полезную информацию.

Рассмотрим теперь полезные параметры утилиты netstat

Полное доменное имя: При использовании параметра -f будут отображается полные доменные имена подключенных удаленных хостов. Имена будут резолвится любыми доступными способами. На рисунке ниже вы можете посмотреть пример данного действия:

Какой процесс использует открытый порт: С помощью комбинации параметров -a -n -o можно отслеживать какой процесс использует открытый порт. Из вывода команды мы узнаем идентификатор процесса (PID), с помощью которого в диспетчере задач можем найти нужный процесс.

Вы можете использовать ещё один полезный параметр для более дружелюбного вывода информации. Параметр -b покажет имя каждого процесса, однако он требует прав администратора.

Отображение таблицы маршрутизации: При использовании параметра -r вы можете посмотреть текущую таблицу маршрутизации.

Я чаще всего использую именно 4 указанные параметра для диагностики проблем Windows. Как ещё вы используете netstat и почему?

Полезная информация

Любите одеваться модно и красиво? Зайдите в интернет магазин одежды из Кореи и купите себе за приемлимую цену вещи великолепного качества.

    Команда NETSTAT предназначена для получения сведений о состоянии сетевых соединений и слушаемых на данном компьютере портах TCP и UDP, а также, для отображения статистических данных по сетевым интерфейсам и протоколам.

Формат командной строки:

NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p протокол] [-r] [-s] [-t] [интервал]

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

-a - Отображение всех подключений и ожидающих портов.
-b - Отображение исполняемого файла, участвующего в создании каждого подключения, или ожидающего порта. Иногда известные исполняемые файлы содержат множественные независимые компоненты. Тогда отображается последовательность компонентов, участвующих в создании подключения, либо ожидающий порт. В этом случае имя исполняемого файла находится снизу в скобках , сверху - компонент, который им вызывается, и так до тех пор, пока не достигается TCP/IP. Заметьте, что такой подход может занять много времени и требует достаточных разрешений.
-e - Отображение статистики Ethernet. Может применяться вместе с параметром -s.
-f - Отображение полного имени домена (FQDN) для внешних адресов.
-n - Отображение адресов и номеров портов в числовом формате.
-o - Отображение кода (ID) процесса каждого подключения.
-p протокол - Отображение подключений для протокола, задаваемых этим параметром. Допустимые значения: TCP, UDP, TCPv6 или UDPv6. Используется вместе с параметром -s для отображения статистики по протоколам. Допустимые значения: IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP или UDPv6.
-r - Отображение содержимого таблицы маршрутов.
-s - Отображение статистики протокола. По умолчанию статистика отображается для протоколов IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP и UDPv6. Параметр -p позволяет указать подмножество выводимых данных.
-t - Отображение текущего подключения в состоянии переноса нагрузки с процессора на сетевой адаптер при передаче данных ("offload").
-v - Подробный вывод информации, если это возможно.
интервал - Повторный вывод статистических данных через указанный интервал в секундах. Для прекращения вывода данных нажмите клавиши CTRL+C. Если параметр не задан, сведения о текущей конфигурации выводятся один раз.

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

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

netstat -a -n| more - то же, что и в предыдущем примере, но с отображением номеров портов и IP-адресов в числовом формате. В отличие от предыдущего примера, команда netstat с параметром -t отрабатывает намного быстрее.

netstat -a -f | more - то же, что и в предыдущем примере, но с отображением полных DNS-имен узлов, участвующих в соединениии.

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.

Пример отображаемой информации:

Активные подключения

Имя - название протокола.

Локальный адрес - локальный IP-адрес участвующий в соединении или связанный со службой, ожидающей входящие соединения (слушающей порт). Если в качестве адреса отображается 0.0.0.0 , то это означает - "любой адрес", т.е в соединении могут использоваться все IP-адреса существующие на данном компьютере. Адрес 127.0.0.1 - это петлевой интерфейс, используемый в качестве средства IP протокола для взаимодействия между процессами без реальной передачи данных.

Внешний адрес Внешний IP-адрес, участвующий в создании соединения.

Состояние - состояние соединения. Состояние Listening говорит о том, что строка состояния отображает информацию о сетевой службе, ожидающей входящие соединения по соответствующему протоколу на адрес и порт, отображаемые в колонке "Локальный адрес ". Состояние ESTABLISHED указывает на активное соединение. В колонке "Состояние" для соединений по протоколу TCP может отображаться текущий этап TCP-сессии определяемый по обработке значений флагов в заголовке TCP - пакета (Syn, Ask, Fin ...). Возможные состояния:

CLOSE_WAIT - ожидание закрытия соединения.
CLOSED - соединение закрыто.
ESTABLISHED - соединение установлено.
LISTENING - ожидается соединение (слушается порт)
TIME_WAIT - превышение времени ответа.

Имя программного модуля, связанного с данным соединением отображается, если задан параметр -b в командной строке при запуске netstat.exe.

netstat -a -b - получить список всех сетевых соединений и связанных с ними программ.

TCP 192.168.0.3:3389 89.22.52.11:5779 ESTABLISHED
CryptSvc

В данном примере отображается информация о соединении, в создании которого участвуют программные компоненты CryptSvc и svchost.exe .

netstat -ab - параметры командной строки можно объединять. Параметр -ab эквивалентен -a -b

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

Статистика интерфейса

netstat -e -v - кроме суммарной статистики, отображается информация об обмене данными через отдельные сетевые интерфейсы.

netstat -e -s - дополнительно к статистике Ethernet, отображается статистика для протоколов IP , ICMP , TCP , UDP

Статистика интерфейса

Статистика IPv4

Получено пакетов
Получено ошибок в заголовках
Получено ошибок в адресах
Направлено датаграмм

Отброшено полученных пакетов

Запросов на вывод
Отброшено маршрутов
Отброшено выходных пакетов

Требуется сборка
Успешная сборка
Сбоев при сборке


Создано фрагментов
= 10877781
= 0
= 27307
= 0
= 0
= 448
= 11384479
= 11919871
= 0
= 1517
= 6
= 0
= 0
= 0
= 5918
= 0
= 11836

Статистика IPv6

Получено пакетов
Получено ошибок в заголовках
Получено ошибок в адресах
Направлено датаграмм
Получено неизвестных протоколов
Отброшено полученных пакетов
Доставлено полученных пакетов
Запросов на вывод
Отброшено маршрутов
Отброшено выходных пакетов
Выходных пакетов без маршрута
Требуется сборка
Успешная сборка
Сбоев при сборке
Успешно фрагментировано датаграмм
Сбоев при фрагментации датаграмм
Создано фрагментов
= 0
= 0
= 0
= 0
= 0
= 0
= 391
= 921
= 0
= 0
= 14
= 0
= 0
= 0
= 0
= 0
= 0

Статистика ICMPv4

ICMPv6 Статистика

Статистика TCP для IPv4

Статистика TCP для IPv6

Статистика UDP для IPv4

Статистика UDP для IPv6

netstat -s -p icmp - получить статистику только по протоколу ICMP

Пример отображаемых статистических данных:

Статистика ICMPv4

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

netstat -e 3 - отображать статистику по Ethernet с интервалом 3 секунды.

netstat –f 10 - каждые 10 секунд отображать статистику сетевых соединений с использованием полных DNS-имен узлов.

netstat -n 5 | find /i "Established" - каждые 5 секунд отображать статистику по установленным соединениям.

netstat [-a] [-e] [-n] [-o] [-p протокол] [-r] [-s] [интервал] , где

Примеры команды NETSTAT

Пример работы команды Netstat на Windows 10 показан на рисунке выше, утилита работает на всех версиях операционных систем Windows.

  • Для отображения справки по команде введите в командной строке netstat /? ;
  • Для вывода статистики Ethernet и статистики по всем протоколам введите следующую команду: netstat -e -s ;
  • Для вывода статистики только по протоколам TCP и UDP введите следующую команду: netstat -s -p tcp udp ;
  • Для вывода активных подключений TCP и кодов процессов каждые 5 секунд введите следующую команду: netstat -o 5 .

IPCONFIG - управление сетевыми интерфейсами – Самалхан А.

Команда IPCONFIG - отображение параметров TCP/IP

Команда IPCONFIG служит для управления сетевыми интерфейсами и отображения всех текущих параметров сети TCP/IP, а также обновления параметров DHCP и DNS в операционных системах Windows. При вызове команды ipconfig без параметров выводится только IP-адрес, маска подсети и основной шлюз для каждого сетевого адаптера. А для проверки соединений в TCP/IP сетях используется команда Ping.



Параметры утилиты IPCONFIG

ipconfig ] ] ] , где

  • /all - Вывод полной конфигурации TCP/IP для всех адаптеров. Без этого параметра команда ipconfig выводит только IP-адреса, маску подсети и основной шлюз для каждого адаптера. Адаптеры могут представлять собой физические интерфейсы, такие как установленные сетевые адаптеры, или логические интерфейсы, такие как подключения удаленного доступа.
  • /renew [адаптер] - Обновление конфигурации DHCP для всех адаптеров (если адаптер не задан) или для заданного адаптера. Данный параметр доступен только на компьютерах с адаптерами, настроенными для автоматического получения IP-адресов. Чтобы указать адаптер, введите без параметров имя, выводимое командой ipconfig.
  • /release [адаптер] - Отправка сообщения DHCPRELEASE серверу DHCP для освобождения текущей конфигурации DHCP и удаление конфигурации IP-адресов для всех адаптеров (если адаптер не задан) или для заданного адаптера. Этот адаптер отключает протокол TCP/IP для адаптеров, настроенных для автоматического получения IP-адресов. Чтобы указать адаптер, введите без параметров имя, выводимое командой ipconfig.
  • /flushdns - Сброс и очистка содержимого кэша сопоставления имен DNS клиента. Во время устранения неполадок DNS эту процедуру используют для удаления из кэша записей отрицательных попыток сопоставления и других динамически добавляемых записей.
  • /displaydns - Отображение содержимого кэша сопоставления имен DNS клиента, включающего записи, предварительно загруженные из локального файла Hosts, а также последние полученные записи ресурсов для запросов на сопоставление имен. Эта информация используется службой DNS клиента для быстрого сопоставления часто встречаемых имен без обращения к указанным в конфигурации DNS-серверам.
  • /registerdns - Динамическая регистрация вручную имен DNS и IP-адресов, настроенных на компьютере. Этот параметр полезен при устранении неполадок в случае отказа в регистрации имени DNS или при выяснении причин неполадок динамического обновления между клиентом и DNS-сервером без перезагрузки клиента. Имена, зарегистрированные в DNS, определяются параметрами DNS в дополнительных свойствах протокола TCP/IP.
  • /showclassid адаптер - Отображение кода класса DHCP для указанного адаптера. Чтобы просмотреть код класса DHCP для всех адаптеров, вместо параметра адаптер укажите звездочку (*). Данный параметр доступен только на компьютерах с адаптерами, настроенными для автоматического получения IP-адресов.
  • /setclassid адаптер [код_класса] - Задание кода класса DHCP для указанного адаптера. Чтобы задать код класса DHCP для всех адаптеров, вместо параметра адаптер укажите звездочку (*). Данный параметр доступен только на компьютерах с адаптерами, настроенными для автоматического получения IP-адресов. Если код класса DHCP не задан, текущий код класса удаляется.

Примеры команды IPCONFIG

  • Чтобы вывести основную конфигурацию TCP/IP для всех адаптеров, введите: ipconfig
  • Чтобы вывести полную конфигурацию TCP/IP для всех адаптеров, введите: ipconfig /all
  • Чтобы обновить конфигурацию IP-адреса, назначенного DHCP-сервером, только для адаптера "Подключение по локальной сети", введите: ipconfig /renew "Подключение по локальной сети"
  • Чтобы сбросить кэш сопоставления имен DNS при наличии неполадок в сопоставлении имен, введите: ipconfig /flushdns
  • Чтобы вывести код класса DHCP для всех адаптеров с именами, начинающимися со слова "Подключение", введите: ipconfig /showclassid "Подключение"
  • Чтобы задать код класса DHCP TEST для адаптера Подключение по локальной сети, введите: ipconfig /setclassid "Подключение по локальной сети" TEST

TRACERT - определение маршрута прохождения пакетов ICMP - Мерей

Описание команды TRACERT

Команда TRACERT выполняет трассировку до точки назначения с помощью посылки адресату эхо-сообщений. Посылка осуществляется по протоколу Control Message Protocol (ICMP) с постоянным увеличением значений срока жизни пакетов (Time to Live, TTL).

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

Для проверки сети также можно воспользоваться командами:

  • PING - основная TCP/IP-команда, используемая для устранения неполадки в соединении, проверки возможности доступа и разрешения имен;
  • PATHPING - предоставляет информацию о латентности сети и потерях данных на промежуточных узлах.

Иногда во время работы какой-либо системы, будь то домашний персональный компьютер или мощный сервер, обслуживающий множество подключений, полезно иметь под рукой инструмент, способный отобразить данные о сетевой активности. Для чего это может понадобиться? Для вычисления приложений, нелегально выходящих в Сеть интернет, или же пользователей. Именно этим и занимается рассматриваемая нами утилита.

Что такое Netstat?

Это такое приложение, с помощью которого можно узнать, что происходит в данный момент в Сети. Для запуска используется командная строка. В ней же при запуске Netstat используются дополнительные ключи и параметры.

Стоит отметить, что название утилиты образовано из двух составляющих - network statistics, то есть сетевая статистика, что, в принципе, логично. Среди информации, которую показывает программа, можно выделить статистику подключений маршрутизации.

Команды и ключи

Синтаксис ключей и параметров команды довольно обширен. Это позволяет получить сетевую статистику на самых разных уровнях. Далее пойдет описание команды 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 "{print $5}" | awk -F: "{print $1}" | sort -n | uniq -c

Определяем большое количество запросов с одного IP-адреса:

netstat -na | grep:80 | sort

Определяем точное количество запросов, полученных на одно соединение:

netstat -np | grep SYN_RECV | wc -l

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

Заключение

В какой операционной системы бы не использовалась команда, она является незаменимым инструментом для сканирования, анализа и отладки сети. Ее активно используют системные администраторы всего мира.

Netstat можно использовать при заражении системы каким-либо вирусным программным обеспечением. Она способна показать все приложения с большой активностью подозрительного сетевого трафика. Это поможет на ранних этапах выявить вредное ПО и нейтрализовать его или же защитить сервер от нежелательного вторжения злоумышленников.

Выводы

В статье было дано подробное описание команды Netstat и её параметров и ключей. Полноценное использование программы возможно после нескольких этапов практики на реальном устройстве. Совмещение с другими командами придаст ей еще больше эффективности. Полный набор описания команд Netstat можно найти в руководстве на официальном сайте утилиты. Также стоит отметить, что при использовании в среде Linux команда Netstat устарела и вместо нее настоятельно рекомендуют использовать SS.

Полезная команда и утилита одновременно, которая называется netstat, позволяет просматривать информацию о соединениях системы по протоколам UDP и TCP.

Команду можно запустить так, чтобы она выполнялась каждые n секунд и позволяла получать следующую информацию в табличном формате:

  • Название протокола (TCP или UDP)
  • Локальный адрес IP и номер порта, которые используются соединением через сокет
  • Удаленный адрес IP (адрес назначения) и номер порта, который используется соединением через сокет
  • Состояние соединения (Ожидающее (Listening) ), Установленное (Established) ) и т.д.)

Изучение состояния портов соединения между двумя системами позволяет исключить протокол TCP/IP, как одну из причин проблемы. Для полного понимания информации, предоставляемой этой командой, необходимо понять принципы установки соединения в протоколе TCP/IP. Вот основные этапы процесса установки соединения TCP/IP:

1. При попытке установить соединение клиент отправляет сообщение SYN серверу.

2. Сервер отвечает собственным сообщением SYN и подтверждением (ACK).

3. После этого клиент отправляет сообщение ACK обратно на сервер, завершая процесс установки соединения.

Процесс разрыва соединения состоит из следующих этапов:

1. Клиент сообщает "Я закончил", отправляя сообщение FIN серверу. На этом этапе клиент только принимает данные от сервера, но сам ничего не отправляет.

2. После этого сервер отправляет сообщение ACK и отправляет собственное сообщение FIN клиенту.

3. После этого клиент отправляет сообщение ACK серверу, подтверждая запрос сервера FIN.

4. При получении сообщения ACK от клиента сервер закрывает соединение.

Понимание этапов процесса установки и разрыва соединения позволяет более прозрачно интерпретировать состояния соединений в выводе команды netstat. Соединения в списке могут находиться в следующих состояниях.

  • CLOSE_WAIT - указывает на пассивную фазу закрытия соединения, которая начинается после получения сервером сообщения FIN от клиента.
  • CLOSED - соединение прервано и закрыто сервером.
  • ESTABLISHED - клиент установил соединение с сервером, получив от сервера сообщение SYN.
  • FIN_WAIT_1 - клиент инициировал закрытие соединения (отправил сообщение FIN).
  • FIN_WAIT_2 - клиент получил сообщения ACK и FIN от сервера.
  • LAST_ACK - сервер отправил сообщение FIN клиенту.
  • LISTEN - сервер готов принимать входящие соединения.
  • SYN_RECEIVED - сервер получил сообщение SYN от клиента и отправил ему ответ.
  • TIMED_WAIT - клиент отправил сообщение FIN серверу и ожидает ответа на это сообщение.
  • YN_SEND - указанное соединение активно и открыто.

Теперь все, что необходимо знать о команде netstat, это синтаксис ее вызова:

Netstat [-a] [-e] [-n] [-o] [-p <протокол>] [-r] [-s] [интервал]

Параметры команды netstat

Параметр

Использование

Отображает все соединения и ожидающие порты

Отображает статистику Ethernet

Показывает адреса и порты в цифровом формате (адреса IP вместо имен интерфейсов

Отображает идентификатор процесса-владельца для каждого соединения

P <протокол>

Показывает соединения для указанного протокола. Можно выбрать один из таких протоколов: TCP, TCPv6, UDP и UDPv6. При указании параметра -s можно указывать IP, IPv6, ICMP и ICMPv6.

Отображает таблицу маршрутизации системы

Отображает статистику для каждого протокола в отдельности; по умолчанию статистика отображается для протоколов TCP, TCPv6, UDP и UDPv6, IP, IPv6, ICMP и ICMPv6. Подмножество протоколов может быть указано с помощью параметра -p.

интервал

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



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: