netstat (network statistics) — утилита командной строки выводящая на дисплей состояние TCP-соединений (как входящих, так и исходящих), таблицы маршрутизации, число сетевых интерфейсов и сетевую статистику по протоколам. Существует более современный аналог netstat - это утилита ss, ее преимущество в том что она обычно уже установлена в ОС, а netstat приходится доустанавливать.
Часто используемые ключи для netstat, обратите внимание ниже приведен пример команды ss и ключи у обоих утилит одинаковые и соответственно они и выведут похожую информацию:
netstat -tulpn ss -tulpn
> netstat -rn Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire default 10.26.95.253 UGS 0 2983649 rl0 10.26.95.0/24 link#3 UC 0 0 vr0 10.26.95.253/32 link#3 UC 0 0 vr0 127.0.0.1 127.0.0.1 UH 0 8602 lo0
Flags: G - флаг шлюза(трафик идущий по этому маршруту проходит через шлюз указанный в столбце Gateway). Т.е. флаг G отмечает удаленную сеть, а его отсутствие - непосредственно подключенную.;
U - показывает, что шлюз в рабочем состоянии(маршрут созданный и используемый ядром);
netstat -tulpn
# netstat -tap
netstat -nlp | grep snmpd
netstat -anp --tcp | grep -v 1720
netstat -cat
Читайте также: (EN) Получение подробной информации о конкретных IP-адресах соединений с помощью команды netstat.
netstat [-Aan] [-f семейство_адресов] [-I интерфейс] [-p имя_протокола] [система] [core] netstat [-n] [-s] [-i | -r] [-f семейство_адресов] [-I интерфейс] [-p имя_протокола] [система] [core] netstat [-n] [-i интерфейс] интервал [система] [core]
Значение по умолчанию для аргумента система — /unix; для аргумента core в качестве значения по умолчанию используется /dev/kmem.
-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)
Команда netstat показывает следующую информацию о передаче данных через сетевые интерфейсы:
# 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 0 542594 0 0 0 6 0 0 0 BMRU lo 16436 0 1141757133 0 0 0 1141757133 0 0 0 LRU
где,
# 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