Утилита ss (от англ. Socket Statistics) — инструмент командной строки Linux, предоставляющий информацию о сетевых сокетах в операционной системе. Эта команда может выводить в окно терминала данные о сетевых соединениях, прослушиваемых портах и другую информацию, связанную с сокетами. Утилита ss часто рассматривается в качестве замены команды netstat, поскольку предлагает более подробную статистику.
В этой статье мы покажем Вам несколько примеров использования команды ss в ОС Linux.
Содержание:
- Вывод списка всех установленных соединений
- Вывод списка всех сокетов в ОС
- Просмотр списка только прослушиваемых сокетов с помощью ss
- Просмотр списка TCP-соединений в Linux
- Вывод всех прослушиваемых соединений TCP
- Просмотр списка UDP-соединений в Linux
- Вывод списка всех прослушиваемых соединений UDP
- Просмотр идентификаторов процессов, использующих сокеты
- Просмотр соединений IPv4 и IPv6
- Фильтрация соединений по номеру порта
- Просмотр сводной статистики по сокетам с помощью ss
- Получение справочной информации о команде ss
- Выводы
Вывод списка всех установленных соединений
Если Вы выполните команду ss без каких-либо опций, она выведет на экран список всех сокетов с установленными соединениями. Например:
На скриншоте выше видно, что утилита вывела следующую информацию о каждом сокете:
Netid— тип;State— состояние: чаще всегоESTAB(установлен),UNCONN(не подключен),LISTEN(прослушиваемый);Recv-Q— количество принятых пакетов в очереди;Send-Q— количество отправленных пакетов в очереди;Local address:port— адрес локального компьютера и порт;Peer address:port— адрес удаленной машины и порт.
Читайте также: Лучшие сетевые команды в Linux.
Вывод списка всех сокетов в ОС
Чтобы вывести на экран список всех сокетов, используйте с командой ss опцию -a:
Просмотр списка только прослушиваемых сокетов с помощью ss
Используя команду ss с опцией -l, Вы выведете в терминал список только прослушиваемых сокетов. Например:
Просмотр списка TCP-соединений в Linux
Соединение TCP — канал связи, установленный между двумя устройствами по сети с помощью протокола TCP (от англ. Transmission Control Protocol). Вы можете просмотреть эти соединения на ПК, с помощью команды ss и ее опции -t:
Читайте также: Полное руководство по tcpdump с примерами.
Вывод всех прослушиваемых соединений TCP
Вы можете добавить в предыдущую команду опцию -l, чтобы просмотреть только прослушиваемые соединения TCP. Например:
Просмотр списка UDP-соединений в Linux
Кроме TCP-соединений, в сети также используются соединения UDP. Чтобы вывести в командную строку список всех соединений UDP, выполните в терминале:
Вывод списка всех прослушиваемых соединений UDP
Чтобы отобразить в терминале только прослушиваемые UDP-соединения, замените в предыдущей команде опцию -a на -l:
Просмотр идентификаторов процессов, использующих сокеты
Вы могли заметить, что в предыдущих примерах колонка Process была пустой. Она содержит в себе информацию о процессах, которые используют сокеты. Чтобы утилита ss также выводила на экран, идентификаторы процессов, используйте параметр -p:
Читайте также: Команда vtop для мониторинга процессов и памяти Linux.
Просмотр соединений IPv4 и IPv6
Команда ss с опцией -4 выведет на экран соединения TCP и UDP, использующие адреса IPv4:
Чтобы отобразить на экране соединения IPv6, примените следующую команду:
Фильтрация соединений по номеру порта
Функционал утилиты ss позволяет отображать соединения, работающие через определенный порт. Для примера выведем на экран все сокеты с портом назначения (dport) или исходным портом (sport) 22:
Так как порт 22 — это порт ssh, мы также можем выполнить и такую команду:
Просмотр сводной статистики по сокетам с помощью ss
Вы можете вывести на экран сводную статистику по сокетам. Для этого выполните в терминале команду ss с опцией -s:
Читайте также: 20 команд netstat для управления сетью Linux и Windows.
Получение справочной информации о команде ss
Чтобы получить подробные сведения об утилите ss, выполните команду:
Либо посетите man-страницу этого инструмента:
Выводы
Утилита ss — это удобный инструмент для просмотра списка соединений в Linux. Кроме того, с ее помощью Вы сможете получить различную расширенную информацию о сетевых сокетах в ОС.
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.



































