Команда ss используется для отображения статистики сокетов. Она может отображать статистику для сокетов: PACKET, TCP, UDP, DCCP, RAW, сокетов Unix и т.д. Также она позволяет отображать информацию, аналогичную команде netstat. Команда ss может отображать наибольшее количество информации о TCP по сравнению с другими инструментами. Это новый, невероятно полезный и быстрый (по сравнению с netstat) инструмент для отслеживания TCP-соединений и сокетов. SS может предоставить информацию о:
- Всех сокетах TCP.
- Всех сокетах UDP.
- Всех установленных соединениях ssh/ftp/http/https.
- Всех локальных процессах, подключенных к X-серверу.
- Всех сокетах tcp в состоянии FIN-WAIT-1
- Может выполнять фильтрацию по состоянию подключенных и синхронизированных, SYN-RECV, SYN-SENT, TIME-WAIT адресов и портов.
Некоторые дистрибутивы Linux считали команду nestat устаревшей и поэтому должны быть поэтапно отменить её в пользу более современных решений, таких как команда ss. Сейчас большинство дистрибутивов Linux поставляется уже с предустановленным ss. Знакомство с этим инструментом помогает улучшить понимание того, что происходит в системных сокетах, и позволяет найти возможные причины проблемы производительности.
Как отобразить сводки с помощью команды ss?
Список установленных в настоящее время, закрытых, потерянных и ожидающих сокетов TCP, введите:
Пример вывода:
Как отобразить все открытые сетевые порты с помощью команды ss в Linux?
Пример вывода:
Введите следующую команду, чтобы просмотреть имя процесса с использованием открытого сокета:
bash][# ss -pl[/bash]
Узнайте, кто отвечает за открытие сокета на port 4949:
Пример вывода:
munin-node (PID # 3772) отвечает за открытие порта 4949. Вы можете получить дополнительную информацию об этом процессе (например, о памяти, пользователях, текущей рабочей директории и т. д.), посетив каталог /proc/3772:
Показать все TCP-сокеты
Показать все UDP-сокеты
Показать все RAW сокеты
Показать все UNIX-сокеты
Примеры вывода:
Показать все установленные соединения SMTP
Показать все установленные HTTP-соединения
Найти все локальные процессы, подключенные к X-серверу
Вывести список всех сокетов TCP в состоянии FIN-WAIT-1
Выведите все сокеты TCP в состоянии -FIN-WAIT-1 для нашего httpd в сети 202.54.1/24 и посмотрите на их таймеры:
Как фильтровать сокеты с использованием состояний TCP?
Синтаксис выглядит следующим образом:
Где FILTER-NAME-HERE может быть любым из приведенных ниже:
- established
- syn-sent
- syn-recv
- fin-wait-1
- fin-wait-2
- time-wait
- closed
- close-wait
- last-ack
- listen
- closing
- all : все вышеперечисленные состояния
- connected : все состояния, за исключением прослушивания и закрытия
- synchronized : все подключенные состояния, за исключением syn-sent
- bucket : gоказывать состояния, которые поддерживаются как мини-сокеты, т.е. время ожидания и syn-recv.
- big : Противоположно состоянию bucket.
Примеры команды ss
Введите следующую команду, чтобы увидеть закрывающие сокеты:
Как сопоставить ip удаленных адресов и портов?
Используйте следующий синтаксис:
Узнайте о подключении удаленного клиента с 123.1.2.100:http к нашим локальным виртуальным серверам:
Примеры вывода:
Как мне сравнить локальный адрес и номера портов?
Как сравнить локальный и/или удаленный порт с номером?
Используйте следующий синтаксис:
Где OP может быть одним из следующих:
- <= или le : меньше или равно порту
- >= или ge : больше или равно порту
- == или eq : равно порту
- != или ne : не равно порту
- < или gt : меньше, чем порт
- > или lt : больше, чем порт
Примечание: le, gt, eq, ne и т.д. также используются в оболочке unix.
Пример:
Флаги для команды ss:
-h, —help это сообщение
-V, —version вывод информации о версии
-n, —numeric запрет имён служб
-r, —resolve разрешения имён хостов
-a, —all отображение всех сокетов
-l, —listening показать сокеты для прослушивания
-o, —options показывает информацию таймера
-e, —extend показать подробную информацию о сокетах
-m, —memory показать использование памяти сокета
-p, —processes показать процесс с помощью сокета
-i, —info показать внутреннюю информацию TCP
-s, -summary показать итоги использования сокета
-4, —ipv4 отображает только сокеты IP версии 4
-6, -ipv6 отображает только сокеты IP версии 6
-0, —packet display пакетные сокеты
-t, —tcp отображать только TCP-сокеты
-u, —udp отображать только UDP-сокеты
-d, —dccp отображать только сокеты DCCP
-w, -raw отображать только RAW-сокеты
-x, —unix отображать только сокеты Unix домена
-f, —family=FAMILY отображать сокеты типа FAMILY
-A, —query = QUERY, —socket = QUERY
QUERY: = {all | inet | tcp | udp | raw | unix | packet | netlink} [, QUERY]
-D, —diag = FILE дамп исходной информации о сокетах TCP для FILE
-F, —filter = FILE считывать информацию о фильтрах из FILE
FILTER: = [state TCP-STATE] [EXPRESSION]
Сравнение скорости работы команды ss с netstat
Используйте команду time для запуска обеих программ и сравните выводы по использованию ресурсов системы. Введите команду netstat следующим образом:
Пример вывода:
Теперь попробуйте выполнить команду ss:
Пример вывода:
Примечание. Оба вывода берутся с ускоренного прокси-сервера, работающего на RHEL v6.x amd64. Для получения дополнительной информации см. страницу ss command man:
Спасибо за уделенное время на прочтение статьи!
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet (программируемые сети) от Академии 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.
1 комментарий. Оставить новый
Спасибо