Pytanie:
Monitorujesz wykorzystanie sieci przez poszczególne aplikacje?
user606348
2011-07-06 10:33:41 UTC
view on stackexchange narkive permalink

Chcę monitorować wykorzystanie sieci / Internetu dla każdej aplikacji na moim Macu.

Coś w rodzaju tego, jak Wskaźnik aktywności pokazuje całkowite użycie wysyłania / pobierania - ale chcę też wiedzieć, jakie zastosowania mają poszczególne aplikacje.

Czy to możliwe?

@koiyu Czego potrzebujesz, czego nie zapewniają obecne odpowiedzi?
@KyleCronin To nie jest tak, że dotychczasowe odpowiedzi nie zadziałały - byłem po prostu zainteresowany, gdyby było więcej alternatyw.
Sześć odpowiedzi:
Nathan Greenstein
2011-07-06 19:07:57 UTC
view on stackexchange narkive permalink

Aplikacja Little Snitch może to zrobić. Pokazuje między innymi ruch według aplikacji.

Kosztuje 29 USD, ale dostępna jest bezpłatna wersja próbna.

mhucka
2011-07-07 04:40:08 UTC
view on stackexchange narkive permalink

Inną aplikacją, z której korzystałem, jest RubbertNet (strona nie działa, link do niej można znaleźć na archive.org). Również nie za darmo, ale dostępna jest bezpłatna wersja próbna.

gentmatt
2012-04-06 20:20:00 UTC
view on stackexchange narkive permalink

Połączenie

HandsOff! i SurplusMeter

to moje obecne rozwiązanie. HandsOff to zaawansowana zapora ogniowa podobna do LittleSnitch. To nie jest darmowe, ale dostępna jest wersja próbna. Z drugiej strony, Surplusmeter jest darmowy i open source.

Wśród funkcji potrzebnych do monitorowania wykorzystania sieci są:

  • monitorowanie aktywności sieciowej każdego procesu (HandsOff!)
  • pobierz informacje o wykorzystaniu sieci przez poszczególne procesy (HandsOff!)
  • zarejestruj całkowite użycie sieci (SurplusMeter)

HandOff wyświetla tylko użycie sieci od rozruchu. Nie rejestruje danych, dlatego potrzebuję SurplusMeter. Jednak SurplusMeter rejestruje tylko całkowite użycie sieci dla wszystkich aplikacji.

enter image description here enter image description here

Niestety, SurplusMeter został wycofany :(
zwerdlds
2012-04-05 20:58:26 UTC
view on stackexchange narkive permalink

Możesz spojrzeć na WireShark. Może mieć onieśmielający interfejs, ale kiedy już się go nauczysz, możesz śledzić ruch według portu.

Możesz także sprawdzić wbudowane narzędzia terminala NetStat, TCPDump i PCap.

Użycie netstat -t -u wyświetli kolejkę wysyłania i odbierania według nazwy procesu.

Pierz
2019-06-12 19:57:35 UTC
view on stackexchange narkive permalink

Apple udostępnia dostosowaną wersję tcpdump jako część systemu MacOS / OSX, która umożliwia wyświetlanie / filtrowanie informacji o metadanych przechwytywania pakietów - która zawiera szereg elementów (zobacz fragment strony podręcznika poniżej) oraz zawiera informacje o procesie. na przykład więc można go uruchomić, aby przechwytywać ruch tylko z przeglądarki Firefox ( -Q proc = firefox ) i wydrukować wszystkie informacje o metadanych pakietów ( -k ):

  sudo tcpdump -Q proc = firefox -k
 

Lub możesz uruchomić go z opcjami -k i wyodrębnić i przeanalizować dane według nazwy / pid procesu. Aby uzyskać więcej informacji, zobacz man tcpdump - tutaj są odpowiednie sekcje (chociaż na stronie podręcznika jest więcej informacji na temat filtrów PKTAP):

  -k Kontroluje wyświetlanie metadanych pakietu poprzez opcjonalny argument metadata_arg.
     Jest to przydatne przy wyświetlaniu pakietów zapisanych w formacie pliku pcap-ng lub z rozszerzeniem
     interfejsy obsługujące typ łącza danych PKTAP.

     Domyślnie, jeśli opcjonalny argument metadata_arg nie jest określony,
     drukowane są odpowiednie informacje o metadanych pakietu.

     Argument metadata_arg steruje wyświetlaniem określonych metadanych pakietu
     informacje przy użyciu słowa flagowego, gdzie każdy znak odpowiada typowi
     metadane pakietu w następujący sposób:

                 I nazwa interfejsu (lub identyfikator interfejsu)
                 Nazwa procesu
                 Identyfikator procesu P.
                 Klasa usług S.
                 Kierunek D.
                 Komentarz C.
                 Flagi C.
                 UUID procesu U (domyślnie niewidoczne)
                 Wyświetla wszystkie typy metadanych

     To jest modyfikacja Apple.

   -Q wyrażenie
     Aby określić wyrażenie filtru na podstawie informacji o metadanych pakietu, takich jak inter-
     nazwa twarzy lub procesu. Zostanie wyświetlony pakiet z pasującymi metadanymi pakietu lub
     zapisany do pliku. Zobacz sekcję FILTR METADANYCH PAKIETÓW, aby poznać składnię pakietu
wyrażenia filtru metadanych.To jest dodatek Apple.
 
chiggsy
2012-04-05 23:54:02 UTC
view on stackexchange narkive permalink

Jeśli używasz iOS 5+, możesz użyć zdalnego interfejsu wirtualnego

  $ # Najpierw pobierz aktualną listę interfejsów. $ ifconfig -llo0 gif0 stf0 en0 en1 p2p0 fw0 ppp0 utun0 $ # Następnie uruchom narzędzie z identyfikatorem UDID urządzenia. $ rvictl -s 74bd53c647548234ddcef0ee3abee616005051edUruchamianie urządzenia 74bd53c647548234ddcef0ee3abee616005051ED [SUCCE] nowy interfejs # SUCCE można zobaczyć nowy interfejs $f # SUCCE i ponownie można wyświetlić interfejs $f # SUCCE wirtualny rvi0, dodane przez poprzednią komendę. $ ifconfig -llo0 gif0 stf0 en0 en1 p2p0 fw0 ppp0 utun0 rvi0  

Powinno być możliwe użycie wireshark, tcpdump lub ngrep na problemie poprzez mac.

EDYTUJ: ipfw jest przestarzałe, ale możesz po prostu włączyć rejestrowanie i zobaczyć, które pakiety trafiają. Nie wiem, jak to zrobić z pf :(

EDYCJA: Nie wiem, dlaczego myślałem, że to na iOS. Przepraszamy

Naprawdę interesujące - ale nie pomoże mi monitorować użycia sieci przez aplikację OS X na OS X.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...