как установить соединения для загрузки файлов в Linux

У меня есть сайт с видеоконтентом (файлы mp4).

Когда люди смотрят видео, они загружают видеофайлы с моего сайта. Я хочу узнать количество активных подключений через терминал Linux. Скорее всего, это TCP-пакеты на 80-м порту.

Однако:

$ netstat -an |grep :80 | wc -l

дает огромное число, ~ 6-7k. Я не думаю, что это правильно?

-1
задан 7 July 2018 в 00:01
2 ответа

netstat в Linux устарел и был заменен на ss , который вы должны использовать вместо него.

Что-то вроде этого должно дать вам то, что вы хотите:

$ ss -H state established '( sport = :https )' | wc -l
21

Это выбирает соединения на порту 443, которые в настоящее время установлены, т. Е. Подключены к удаленному хосту, за исключением тех, которые находятся в процессе закрытия.

1
ответ дан 5 December 2019 в 19:40
netstat -an

предоставит вам активные соединения вместе со ВСЕМ остальным. Сюда входят такие вещи, как прослушивание портов и т. Д.

Если вы ограничены использованием только netstat, вы сможете подсчитать количество установленных подключений, используя что-то вроде:

netstat -an | grep -w "<listening ip>:80" | grep ESTABLISHED | wc -l

, что немного похоже на взлом, но работает просто подсчитав количество установленных подключений, поступающих на ваш IP-адрес прослушивания, на порту 80.

Если вы можете установить ss или он уже установлен:

ss -nt dst <ip webserver is listening on>:80 | wc -l

Вышеупомянутое должно дать вам количество всех подключений к месту назначения вашего прослушивающего IP-адреса на порту 80.

Если вы ищете уникальные соединения, вы можете даже сузить его, используя «sort», а затем «uniq -c» (предшествующий «wc -l»), чтобы получить счет к уникальным связям.

ss очень полезен: https://linux.die.net/man/8/ss

0
ответ дан 5 December 2019 в 19:40

Теги

Похожие вопросы