Различия

Показаны различия между двумя версиями страницы.


Предыдущая версия
netstat [2025/07/06 12:39] (текущий) – внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 +====== Применение команды netstat ======
 +{{ ::netstat-commands-linux.jpg?600 |}}
 +~~Title: Как пользоваться командой netstat ~~
 +{{htmlmetatags>
 +metatag-description=(Команда netstat - средство отображения сведений о сетевых соединениях и получения статистической информации по протоколам. netstat примеры использования.)
 +}}
  
 +**netstat (network statistics)** — утилита командной строки выводящая на дисплей состояние [[TCP|TCP-соединений]] (как входящих, так и исходящих), таблицы маршрутизации, число сетевых интерфейсов и сетевую статистику по протоколам. Существует более современный аналог netstat - это утилита [[ss|ss]], ее преимущество в том что она обычно уже установлена в ОС, а netstat приходится доустанавливать.
 +
 +<panel type="primary">**Часто используемые ключи для netstat**, обратите внимание ниже приведен пример команды [[ss|ss]] и ключи у обоих утилит одинаковые и соответственно они и выведут похожую информацию:
 +<file bash>
 +netstat -tulpn
 +ss -tulpn
 +</file></panel>
 +
 +  * Показать список текущих маршрутов:
 +<code bash>
 +> netstat -rn
 +Routing tables
 +
 +Internet:
 +Destination        Gateway            Flags    Refs      Use  Netif Expire
 +default            10.26.95.253      UGS          2983649    rl0
 +10.26.95.0/24      link#            UC          0        0    vr0
 +10.26.95.253/32    link#            UC          0        0    vr0
 +127.0.0.1          127.0.0.1          UH          0     8602    lo0
 +</code>
 +**Flags**: **G** - флаг шлюза(трафик идущий по этому маршруту проходит через шлюз указанный в столбце Gateway). Т.е. флаг G отмечает удаленную сеть, а его отсутствие - непосредственно подключенную.;
 +
 +**U** - показывает, что шлюз в рабочем состоянии(маршрут созданный и используемый ядром);
 +
 +  * Вывести открытые порты Linux, которые ожидают соединения. Порты имеют тип LISTEN, перед портом отображается IP адрес на котором сервис ожидает подключений. Это может быть определенный IP адрес или */0.0.0.0 что означают любой доступный адрес:<file bash>
 +netstat -tulpn
 +</file>
 +  * Показать все активные TCP (-t)соединения с интернетом:<code>
 +# netstat -tap
 +</code>
 +  * <file>
 +netstat -nlp | grep snmpd
 +</file>
 +  * <file>
 +netstat -anp --tcp | grep -v 1720
 +</file>
 +  * Показать все активные соединения по протоколу [[TCP]] и [[UDP]]<file>
 +netstat -ntu
 +</file>
 +  * Непрерывно отслеживаем соединения<file>
 +netstat -cat
 +</file>
 +
 +Читайте также: [[https://www.cyberciti.biz/tips/netstat-command-tutorial-examples.html|(EN) Получение подробной информации о конкретных IP-адресах соединений с помощью команды netstat]].
 +===== Синтаксис, Опции =====
 +<file>
 +netstat [-Aan] [-f семейство_адресов] [-I интерфейс] [-p имя_протокола] [система] [core] 
 +netstat [-n] [-s] [-i | -r] [-f семейство_адресов] [-I интерфейс] [-p имя_протокола] [система] [core] 
 +netstat [-n] [-i интерфейс] интервал [система] [core]
 +</file>
 +  * Первая форма команды показывает список активных сокетов (sockets) для каждого протокола.
 +  * Вторая форма выбирает одну из нескольких других сетевых структур данных.
 +  * Третья форма показывает динамическую статистику пересылки пакетов по сконфигурированным сетевым интерфейсам; аргумент интервал задает, сколько секунд собирается информация между последовательными показами.
 +Значение по умолчанию для аргумента система — /unix; для аргумента core в качестве значения по умолчанию используется /dev/kmem.
 +<file>
 +        -r, --route отобразить таблицу маршрутизации
 +        -i, --interfaces отобразить таблицу интерфейсов. Показать состояние всех настроенных сетевых интерфейсов
 +        -g, --groups отобразить членства в мультикаст группах
 +        -s, --statistics отобразить сетевую статистику (как SNMP)
 +        -M, --masquerade отобразить замаскированные соединения
 +
 +        -v, --verbose более детальный вывод
 +        -W, --wide               don't truncate IP addresses
 +        -n, --numeric не преобразовывать адреса в имена
 +        --numeric-hosts не преобразовывать адреса в имена компьютеров
 +        --numeric-ports не преобразовывать номера портов в имена
 +        --numeric-users не преобразовывать в имена пользователей
 +        -N, --symbolic преобразовать имена устройств
 +        -e, --extend отображать другую/больше информации
 +        -p, --programs отображать номер процесса программы/имя программы для сокетов
 +        -c, --continuous непрерывный вывод
 +
 +        -l, --listening отображать прослушиваемые сокеты сервера
 +        -a, --all, --listening отобразить все сокеты (по умолчанию - в статусе connected)
 +        -o, -timers отобразить таймеры
 +        -F, -fib отобразить информацию форвардинга базы (по умолчанию)
 +        -C, --cache отобразить кэш маршрутизации вместо FIB
 +
 +  <Socket>={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom
 +  <AF>=Use '-6|-4' or '-A <af>' or '--<af>'; по умолчанию: inet
 +  Список возможный адресных семейств (которые поддерживают маршрутизацию):
 +    inet (DARPA Internet) inet6 (IPv6) ax25 (AMPR AX.25) 
 +    netrom (AMPR NET/ROM) ipx (Novell IPX) ddp (Appletalk DDP) 
 +    x25 (CCITT X.25)
 +</file> 
 +====== netstat и сеть ======
 +Команда netstat показывает следующую информацию о передаче данных через сетевые интерфейсы:
 +  * Адреса всех управляющий блоков протокола, связанных с сокетами, и состояние всех сокетов
 +  * Число пакетов, полученных переданных и отброшенных подсистемой сетевого ввода-вывода
 +  * Полная статистика для каждого интерфейса
 +  * Маршруты и их состояние
 +
 +  * Показать состояние всех настроенных сетевых интерфейсов:<file>
 +# netstat -i
 +Kernel Interface table
 +Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
 +eth0       1500   0 2673904188      0      0      0 13028338940      0      0      0 BMRU
 +eth1       1500     542594      0      0      0        6      0      0      0 BMRU
 +lo        16436   0 1141757133      0      0      0 1141757133      0      0      0 LRU
 +</file>где,
 +  * **Iface**. Имя интрефейса.
 +  * **MTU**. Максимальный блок передачи ([[MTU]]). Максимальный размер, в байтах, передаваемого через интерфейс пакета.
 +
 +  * Показать статистику [[UDP]] или [[TCP]]:<file>
 +# netstat -su
 +IcmpMsg:
 +    InType3: 9040
 +    InType5: 27
 +    InType8: 1
 +    InType11: 407
 +    OutType0: 1
 +    OutType3: 1244
 +Udp:
 +    пакетов принято: 75849
 +    принято пакетов на неизвестный порт: 1183
 +    ошибок приема пакетов: 0
 +    пакетов послано: 144780
 +UdpLite:
 +IpExt:
 +    InMcastPkts: 1390
 +    OutMcastPkts: 185
 +    InBcastPkts: 17666
 +    OutBcastPkts: 1473
 +    InOctets: 92565327
 +    OutOctets: 855223704
 +    InMcastOctets: 129017
 +    OutMcastOctets: 23069
 +    InBcastOctets: 1609681
 +    OutBcastOctets: 202516
 +
 +# netstat -st
 +</file>
 +<panel type="primary" title="Читайте также">
 +  * [[utility_os_nix]]
 +  * [[bash]]
 +  * [[ss]]
 +</panel>

📌 Удобный подбор VPS по параметрам доступен на DIEGfinder.com - официальном инструменте проекта DIEG. Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти подходящий VPS/VDS сервер для любых задач хостинга.

📌 Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок. Подробнее о быстрой аренде VPS для экспериментов - читайте здесь.

💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!