Netstat - Netstat

netstat
Команда .mw-parser-output .monospaced {font-family: monospace, monospace} команда netstat
В netstat команда
изначальный выпуск1983; 37 лет назад (1983)
Операционная системаUnix, Unix-подобный, План 9, Inferno, OS / 2, Майкрософт Виндоус, ReactOS
ТипКоманда
ЛицензияOS / 2, Windows: Проприетарный коммерческое программное обеспечение
net-tools, ReactOS: GPLv2

В вычисление, netstat (сетьработай статистики) это командная строка сетевая утилита который отображает сетевые подключения для Протокол управления передачей (как входящие, так и исходящие), таблицы маршрутизации, и номер сетевого интерфейса (контроллер сетевого интерфейса или же программно-определяемый сетевой интерфейс ) и статистика сетевого протокола. Он доступен на Unix, План 9, Inferno, и Unix-подобный операционные системы включая macOS, Linux, Солярис и BSD. Он также доступен на IBM OS / 2 и дальше Microsoft Windows NT -основанные операционные системы, включая Windows XP, Виндоус виста, Windows 7, Windows 8 и Windows 10.

Он используется для поиска проблем в сети и определения объема трафика в сети в качестве измерения производительности.[1] В Linux эта программа в основном устарела, хотя все еще включена во многие дистрибутивы.

В Linux netstat (часть "net-tools") заменяется SS (часть iproute2 ). Замена для netstat -r является IP-маршрут, замена netstat -i является ip -s ссылка, и замена netstat -g является ip maddr, все из которых рекомендуется.[2][3][4][5]

Статистические данные предоставлены

В ReactOS netstat команда

Netstat предоставляет статистику для следующего:

  • Proto - Название протокола (TCP или же UDP ).
  • Местный адрес - IP адрес локального компьютера и номер используемого порта. Имя локального компьютера, соответствующего IP адрес и имя порта отображаются, если -n параметр указан. Звездочка (*) отображается для хоста, если сервер прослушивает все интерфейсы. Если порт еще не установлен, номер порта отображается звездочкой.
  • Зарубежный адрес - IP адрес и номер порта удаленного компьютера, к которому подключен сокет. Имена, соответствующие IP адрес и порт отображаются, если -n параметр указан. Если порт еще не установлен, номер порта отображается звездочкой (*).
  • Состояние - указывает состояние TCP связь. Возможные состояния: CLOSE_WAIT, CLOSED, ESTABLISHED, FIN_WAIT_1, FIN_WAIT_2, LAST_ACK, LISTEN, SYN_RECEIVED, SYN_SEND и TIME_WAIT. Для получения дополнительных сведений о состояниях TCP-соединения см. RFC 793.

Параметры

Параметры, используемые с этой командой, должны иметь префикс дефиса (-), а не косой черты (/). Некоторые параметры поддерживаются не на всех платформах.

ИмяОписаниеWindowsReactOSmacOSBSDNetBSDFreeBSDLinuxСолярисOS / 2
Дисплеи аВсе активные соединения и TCP и UDP порты на котором компьютер слушает.дадада
-bОтображает бИмя основной (исполняемой) программы, участвующей в создании каждого соединения или порта прослушивания. (Windows XP, Windows Server 2003 и более новые операционные системы Windows; не Microsoft Windows 2000 или старше).даНетНет
-bПричины сообщить об общем количестве бytes трафика.НетдадаНет
-eДисплеи етернет статистика, например, количество байты и пакеты отправлены и получены. Этот параметр можно комбинировать с -s.дадаНет
-fДисплеи жокончательно квалифицированные доменные имена <FQDN > для иностранных адресов (доступно только на Виндоус виста и более новые операционные системы).даНетНет
-f Адрес СемьяОграничивает отображение определенным семейством адресов сокетов, unix, инет, inet6НетдаНет
-граммОтображает многоадресную рассылку грамминформация о членстве в группе для IPv4 и IPv6 (может быть доступно только в более новых операционных системах)НетНетда
Отображает сеть яинтерфейсы и их статистикаНетНетда
Отображает мстатистика emory для сетевого кода (статистика STREAMS в Solaris).НетНет
-nОтображает активные TCP-соединения, однако адреса и номера портов выражаются численно, и не предпринимается никаких попыток определить имена.дадада
Отображает активные TCP-соединения и включает идентификатор процесса (PID) для каждого соединения. Вы можете найти приложение на основе PID в Процессы вкладка в Диспетчер задач Windows. Этот параметр можно комбинировать с -a, -n, и -п. Этот параметр доступен в Microsoft Windows XP, Windows Server 2003, и Windows 2000 если исправление применено.[6]даНетНет
-п протоколПоказывает соединения для ппротокол, указанный протокол. В этом случае, протокол возможно tcp, udp, tcpv6 или udpv6. Если этот параметр используется с -s отображать статистику по протоколу, протокол возможно TCP, UDP, ICMP, IP, TCPV6, UDPV6, ICMPV6, или же ipv6.дадада
-пПоказать, какие пПроцессы используют какие сокеты (аналогично -b в Windows) (для этого вы должны быть root)НетНетда
протоколПоказывает соединения для ппротокол, указанный протокол. В этом случае, протокол возможно ip, ipv6, icmp, icmpv6, igmp, udp, tcp, или же сырье.НетНетда
Отображает содержимое IP рпрогулочный стол. (Это эквивалентно печать маршрута команда под Windows.)дададада
-sДисплеи sтатистика по протоколу. По умолчанию статистика отображается для TCP, UDP, ICMP, и IP протоколы. Если установлен протокол IPv6 для Windows XP, статистика отображается для TCP over IPv6, UDP через IPv6, ICMPv6, и протоколы IPv6. В -п Параметр может использоваться для указания набора протоколов.дадада
-tОтображать только TCP-соединения.Нетдада
-uОтображать только UDP-соединения.НетНетдада
-WОтображать широкий вывод - не обрезает имена хостов или IPv6-адресаНетНетдаНет
-ИксОтображает подключения NetworkDirect, прослушиватели и общие конечные точки.да
Отображает шаблон подключения TCP для всех подключений. Не может быть объединен с другими параметрами.да
-vПри использовании вместе с -b он отобразит последовательность компонентов, участвующих в создании соединения или порта прослушивания для всех исполняемых файлов.даНетНет
ИнтервалПовторно отображает выбранную информацию каждые интервалы секунд. Нажмите CTRL + C, чтобы остановить повторное отображение. Если этот параметр опущен, netstat печатает выбранную информацию только один раз.дадаНет
-часОтображает справку в командной строке.даНетдадададададаНет
-?Отображает справку в командной строке.даНетНетНетНетНетНетНетда
/?Отображает справку в командной строке.дадаНетНетНетНетНетНетНет

Примеры

Кросс-платформа

В macOS, системах BSD, дистрибутивах Linux и Microsoft Windows:

Чтобы отобразить sстатистика только для TCP или UDP пПротоколы введите одну из следующих команд:

netstat -sp tcp

netstat -sp udp

Unix-подобный

В Unix-подобных системах:

Чтобы отобразить все порты, открытые процессом с идентификатором пид:

netstat -aop | grep "pid"

Чтобы постоянно отображать открытые TCP- и UDP-соединения в числовом виде, а также какую программу их использует в Linux:

netstat -nutpacw

Windows

В Microsoft Windows:

Отображать активные TCP-соединения и идентификаторы процессов каждые 5 секунд, введите следующую команду (работает только в системах на базе NT или Windows 2000 с исправлением):

netstat -o 5

Чтобы отобразить активные TCP-соединения и идентификаторы процессов, используя пВ числовой форме введите следующую команду (работает только в системах на базе NT или Windows 2000 с исправлением):

netstat -no

* nix

КомандаОбъяснение
netstat -aПоказывает все сокеты, как прослушивающие, так и не прослушивающие, все протоколы, такие как TCP, UDP и т. Д.
netstat -atПоказывает только TCP-соединения (-au показывает только UDP-соединения)
netstat -antОтображает все TCP-соединения без разрешения DNS (вместо этого отображаются IP-адреса).
netstat -alПоказывает только прослушивающие сокеты.
netstat -aepТакже покажите PID и какой программе принадлежит каждый сокет, e добавляет дополнительную информацию, например, пользователя. Запустите как root, чтобы увидеть все PID.
netstat -s> file2.txtПоказывает сетевую статистику.
netstat -rПоказывает информацию о маршрутизации ядра. Это тот же результат, что и route -e.
netstat -iОтображает таблицу всех сетевых интерфейсов. Добавьте -e, чтобы получить результат, аналогичный ifconfig.
netstat -ctПостоянно отображает TCP-соединения.
netstat -gОтображение информации о членстве в группе многоадресной рассылки для IPv4 и IPv6.
netstat -lntuПоказать все службы, прослушивающие TCP и UDP, все свободные открытые порты на локальном компьютере.
netstat -atnp | grep ESTAОтображает все «установленные» TCP-соединения.

Подстановочные знаки

Netstat использует звездочку * как подстановочный знак, что означает «любой». Примером может быть

Пример вывода:

 .... Локальный адрес Внешний адрес Состояние ... *: smtp *: * LISTEN

В разделе "Местный адрес" * в *: smtp, означает, что процесс прослушивает все сетевые интерфейсы машины для порта, отображаемого как smtp (разрешение службы см. в / etc / services). Это также может быть показано как 0.0.0.0. Первый * в *:*, означает, что соединения могут приходить с любого IP-адреса, а второй *, в *:*, означает, что соединение может происходить с любого порта на удаленном компьютере.

Предостережения

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

Замечания по платформе

В macOS netstat команда

Под Linux, необработанные данные часто можно получить из / proc / net / dev обойти printf повреждение вывода, возникающее в сводке статистики сетевого интерфейса netstat, netstat -i, до тех пор, пока проблема не будет исправлена.[нужна цитата ]

На Windows платформу, информацию netstat можно получить, вызвав GetTcpTable и GetUdpTable функции в IP Helper API или IPHLPAPI.DLL. Возвращаемая информация включает локальные и удаленные IP-адреса, локальные и удаленные порты и (для GetTcpTable) TCP коды состояния. Помимо инструмента командной строки netstat.exe, поставляемого с Windows, GUI доступны программы на основе netstat.

На платформе Windows эта команда доступна, только если Протокол Интернета (TCP /IP ) Протокол устанавливается как компонент в свойствах сетевого адаптера в Сетевые подключения.

На Windows Платформа, на которой запущены службы удаленных рабочих столов (ранее - службы терминалов), будет показывать подключения только для текущего пользователя, а не для всего компьютера.

На macOS, папку / System / Library / CoreServices / Applications (или / Applications / Utilities в OS X Mountain Lion и ранее) содержит утилиту сетевого графического интерфейса под названием Сетевая утилита, то Netstat tab из которого запускает команду netstat и отображает ее вывод на вкладке.

Смотрите также

  • SS, утилита Linux для исследования сокетов из iproute2 предназначен для замены netstat
  • lsof -i

Рекомендации

  1. ^ "Информационный центр IBM Systems". ibm.com.
  2. ^ "нетто-инструменты". linuxfoundation.org.
  3. ^ «Arch Linux». archlinux.org. 8 июня 2011 г.
  4. ^ «Устаревшие сетевые команды Linux и их замены». Технический блог Дуга Витале.
  5. ^ "Справочная страница netstat (раздел примечаний)". Получено 2 августа 2014. Эта программа устарела. Замена netstat - ss. Замена netstat -r - это ip route. Замена netstat -i - ссылка ip -s. Замена netstat -g - ip maddr.
  6. ^ http://support.microsoft.com/kb/907980

дальнейшее чтение

  • Дайсон, Питер (1995). Освоение OS / 2 Warp. Sybex. ISBN  978-0782116632.
  • Станек, Уильям Р. (2008). Карманный консультант администратора командной строки Windows, 2-е издание. Microsoft Press. ISBN  978-0735622623.

внешняя ссылка