Список всех открытых подключений к Интернету на Mac из терминала для отслеживания проблем с пропускной способностью

Терминал в OS X

Недавно локальная сеть в моем офисе работала медленнее, чем обычно, и я не мог точно определить, что использовало всю дополнительную пропускную способность. У меня было подозрение, что виноват P2P-трафик, но я просто не видел ничего очевидного на машине-нарушителе. Итак, вопрос, конечно, в том, как вы видите, какие процессы подключаются к Интернету или внешнему миру из Mac OS X?

Используя инструмент командной строки lsof, мы можем передать аргумент -i, чтобы перечислить только активные и открытые интернет-соединения на наших Mac, и мы можем узнать, есть ли что-то особенное (или, в моем случае, что-то скрытое), происходит и подключается к внешний адрес, и эта команда также покажет вам, каков идентификатор процесса у проблемного приложения или задачи, чтобы мы могли убить его и остановить действие, если это необходимо.

Отображение списка всех открытых подключений к Интернету в OS X из командной строки

Его необходимо ввести из Терминала OS X, но его можно использовать удаленно с помощью SSH или локально на Mac.

Я вошел в Mac и набрал следующую команду:

lsof -i

Вам не нужно использовать sudo, но вы можете, если хотите или требуется для вашего конкретного случая использования.

Вывод lsof немного загружен, но если вы знакомы с командной строкой, это не должно выглядеть слишком сумасшедшим.

Вот пример вывода, отображаемого этой командной строкой lsof -i:

MacMini:~ macuser$ lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
SystemUIS 93 macuser 6u IPv4 0x04db27bc 0t0 UDP *:*
SystemUIS 93 macuser 10u IPv4 0x04db26e0 0t0 UDP *:*
iChatAgen 111 macuser 6u IPv4 0x07084734 0t0 UDP localhost:49490->localhost:49490
iChatAgen 111 macuser 10u IPv4 0x05666f28 0t0 TCP 192.168.0.101:53762->bos-m012c-sdr6.blue.aol.com:aol (ESTABLISHED)
synergys 129 macuser 5u IPv4 0x05f2f6b0 0t0 TCP *:24800 (LISTEN)
Safari 148 macuser 10u IPv4 0x06db46e0 0t0 TCP 192.168.0.101:57557->host29.prod.google.com:http (CLOSE_WAIT)
iTunes 644 macuser 21u IPv4 0x05f2f2a4 0t0 TCP *:daap (LISTEN)

В приведенном выше выводе lsof нет ничего необычного, но при вышеупомянутом устранении неполадок в сети я обнаружил, что BitTorrent-клиент работает скрытым в фоновом режиме одного из моих сетевых компьютеров Mac, и он заполнял несколько больших файлов! Естественно, я убил клиент BitTorrent, удалил приложение, удалил файлы, и локальная сеть Mac снова заработала на полной скорости.

Отображение только установленных подключений к Интернету

Если вы хотите отображать только установленные соединения (то есть они активно обмениваются данными и была установлена ​​связь между локальным компьютером и внешним IP-адресом), вы можете использовать этот вариант команды вышеупомянутой строки lsof:

lsof -i | grep -E "(LISTEN|ESTABLISHED)"

Вы можете объединить это с «часами», чтобы получить автоматически обновляемый список установленных подключений.

И если вы знаете имя процесса, вы всегда можете использовать grep для этого конкретного или неопределенного имени.

Это немного продвинутый вариант, но он работает довольно хорошо для пользователей Mac, которым удобен терминал и командная строка в целом. Более начинающие пользователи Mac могут использовать Private Eye для мониторинга интернет-соединений и сетевых подключений в OS X, которая представляет собой бесплатное, но отличное стороннее приложение, работающее в графическом пользовательском интерфейсе и которое немного легче анализировать, особенно если у вас нет опыта работы с терминал.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *