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