18

У меня относительно ограниченное широкополосное соединение (я живу в милях от ближайшей станции обмена), и время от времени доступ к сети (но больше ничего) замедляется до почти полного сканирования.

Из небольшого количества программного обеспечения для мониторинга я знаю, что соединение используется довольно интенсивно, что объясняет это, но я не знаю, что его использует. Конечно, есть много вещей, которые могут (в наши дни существуют десятки приложений, которые будут либо регулярно, либо нечасто проверять данные или загружать обновления), но как я могу узнать?

Я рад заплатить (небольшую сумму) денег, если это необходимо, хотя в этом случае я бы предпочел, чтобы я просто что-то гуглил.

5 ответов5

17

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

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

9

Как насчет iftop? Получить через:

7

Вы можете пройти часть пути с помощью следующей команды, запущенной из терминала:

sudo lsof |grep TCP | grep ESTAB

Это перечислит все открытые соединения TCP. В первом столбце перечислены приложения, которые устанавливают соединение, так что вы можете выяснить, кто является вероятным виновником. Пример пары строк вывода может выглядеть так:

ssh       10099            tim   21u     IPv4 0x1164766c        0t0       TCP 10.0.52.158:61830->home:ssh (ESTABLISHED)
Mail      13216            tim   23u     IPv4 0x11660270        0t0       TCP 10.0.52.158:57696->##.##.##.##:imaps (ESTABLISHED)

Итак, я вижу, что и Mail, и ssh используют соединения. Если решение не очевидно из этого, вы можете использовать dtrace для получения более подробной информации. В частности, ознакомьтесь с DTrace Tools, некоторые из которых уже установлены на вашем Mac в каталоге /usr /bin:

bitesize.d cpuwalk.d creatbyproc.d dappprof dapptrace diskhits dispqlen.d dtruss errinfo execsnoop fddist filebyproc.d hotspot.d httpdstat.d iodbctest iodbctestw iofile.d iofileb.d iopattern iopending iosnoop iotop kill.d lastwords loads.d newproc.d opensnoop otool pathopens.d pidpersec.d plockstat priclass.d pridist.d procsystime runocc.d rwbypid.d rwbytype.d rwsnoop sampleproc seeksize.d setuids.d sigdist.d syscallbypid.d syscallbyproc.d syscallbysysc.d topsyscall topsysproc weblatency.d

Я думаю, что вам нужно в вашей ситуации, вероятно, либо tcpsnoop, либо tcptop, которые, по-видимому, не доступны на Mac по умолчанию, что заставляет меня задуматься, не было ли проблем с портированием.

7

использование iftop

Шаг 0: установите iftop через MacPorts или Homebrew (это также автоматически установит все зависимости)

sudo port install iftop
brew install iftop

Шаг 1: посмотрите список сетевых "интерфейсов" в вашей системе (по умолчанию iftop использует en0, который в широкополосной сети Cricket дает вам пустой экран)

ifconfig -l    # shows: lo0 gif0 stf0 en0 en1 wlt1 fw3 vnic0 vnic1 vboxnet0 ppp0

Шаг 2: запускать iftop с разными сетевыми "интерфейсами", пока не работает iftop (ppp0 в моей системе)

sudo iftop -i ppp0    # have to use sudo to avoid "pcap_open_live(ppp0): (no devices found) /dev/bpf0: Permission denied"

Шаг 3: выйти из iftop, нажав "q"

3

Nettop - это встроенный инструмент командной строки. Вы можете запустить его в Терминале, набрав nettop . Представление по умолчанию слишком многословно, поэтому я всегда нажимаю клавиши c и d чтобы увидеть одно приложение на строку (c) и увидеть текущее использование полосы пропускания вместо общего сетевого трафика (d). Вам, вероятно, нужно развернуть окно терминала, чтобы увидеть все столбцы.

Больше информации и скриншоты здесь.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .