Netstat (сетевая статистика) - это инструмент командной строки для мониторинга входящих и исходящих сетевых подключений, а также просмотра таблиц маршрутизации, статистики интерфейсов, маскарадных подключений, многоадресного членства и т. Д. Его можно использовать для вывода списка всех сетевых (сокетных) подключений на система. В нем перечислены все соединения сокетов tcp, udp и соединения сокетов unix. Netstat доступен во всех Unix-подобных операционных системах, а также в ОС Windows. Это очень полезно с точки зрения устранения неполадок в сети и измерения производительности. netstat - это один из самых основных инструментов отладки сетевых служб, который сообщает вам, какие порты открыты и прослушивают ли порты какие-либо программы.
Список всех подключений
Первая и самая простая команда - вывести список всех текущих подключений. Просто запустите команду netstat с параметром a.
# netstat -a
проверьте следующий фрагмент для вывода netstat. Вывод содержит несколько страниц, поэтому некоторые данные опускаются.
Объяснение каждого столбца
Следовательно - сообщите нам, является ли указанный сокет TCP или UDP. TCP-соединения используются для просмотра веб-страниц и загрузки файлов. Соединения UDP используются в некоторых динамичных компьютерных играх, а иногда и в прямых трансляциях.
Recv-Q & Отправить-Q - сообщите нам, сколько данных находится в очереди для этого сокета, ожидающих чтения (Recv-Q) или отправки (Send-Q). Вкратце: если это 0, все в порядке, если где-то есть ненулевые значения, могут быть проблемы.
Местный адрес & Иностранный адрес - сообщить, к каким хостам и портам подключены перечисленные сокеты. Локальный конец всегда находится на компьютере, на котором вы запускаете netstat, а внешний конец - на другом компьютере.
Состояние - сообщает, в каком состоянии находятся перечисленные сокеты. Протокол TCP определяет состояния, включая LISTEN (ожидание, пока какой-нибудь внешний компьютер свяжется с нами) и ESTABLISHED (готовность к обмену данными). Самым странным среди них является состояние ЗАКРЫТАЯ ОЖИДАНИЕ. Это означает, что чужой или удаленный компьютер уже закрыл соединение, но локальная программа почему-то не последовала его примеру.
Приведенная выше команда показывает все соединения из разных протоколов, таких как сокеты tcp, udp и unix. Однако это не совсем полезно. Администраторы часто хотят выбрать определенные соединения, например, на основе протоколов или номеров портов.
Не разрешать хост, порт и имя пользователя в выводе netstat
Если вы не хотите, чтобы отображалось имя хоста, порта или пользователя, используйте параметр netstat -n. Это будет отображаться в цифрах, вместо разрешения имени хоста, имени порта, имени пользователя. Это также ускоряет вывод, поскольку netstat не выполняет никакого поиска.
# netstat -an
Перечислить только TCP или UDP-соединения
Чтобы вывести список только TCP-соединений, используйте параметры t.
# netstat -t
Точно так же, чтобы вывести список только udp-соединений, используйте опцию u.
Список всех LISTENING подключений
# netstat -l
Список всех портов прослушивания TCP
# netstat -lt
Список всех портов прослушивания UDP
# netstat -lu
Отображение имени службы с PID
# netstat -tp
Отображение IP-маршрутизации ядра
# netstat -r
Отображение транзакций сетевого интерфейса
# netstat -i
Отображение сетевой статистики в формате RAW
# netstat –statistics –raw
По-настоящему эффективно использовать netstat можно только в том случае, если вы хорошо разбираетесь в своей сети и системе Linux.