Trên Mac OS X, làm cách nào tôi có thể theo dõi những gì đang sử dụng kết nối internet của mình?


18

Tôi đã có một kết nối băng thông rộng tương đối hạn chế (tôi sống cách xa sàn giao dịch gần nhất) và thỉnh thoảng truy cập mạng (nhưng không có gì khác) chậm lại khi bò gần.

Tôi biết từ một chút phần mềm giám sát rằng kết nối đang được sử dụng khá nhiều sẽ giải thích nó nhưng tôi không biết những gì sử dụng nó. Chắc chắn có rất nhiều thứ có thể (ngày nay có hàng tá ứng dụng sẽ thường xuyên hoặc không thường xuyên kiểm tra dữ liệu hoặc tải xuống các bản cập nhật) nhưng làm cách nào tôi có thể tìm ra?

Tôi rất vui khi trả (một lượng nhỏ) tiền nếu cần, mặc dù trong trường hợp đó tôi muốn nói rằng đó là một lời khuyên rằng tôi chỉ nên Googling cho một cái gì đó.

Câu trả lời:


17

Little Snitch cho phép bạn cấp quyền truy cập Internet vào các chương trình một cách chọn lọc, do đó bạn có thể quyết định số cổng và tên máy chủ nào mà ứng dụng được phép nói chuyện.

Đây là một tường lửa cá nhân rất tiện dụng và là một trong những thứ đầu tiên tôi cài đặt trên máy Mac mới. Ngăn chặn các ứng dụng gọi điện về nhà hoặc làm bất cứ điều gì trên Internet có thể rất quan trọng đối với người có quyền riêng tư.


1
Little Snitch là vô giá trong việc xử lý những gì đang vào / ra từ máy tính của bạn ở cấp độ ứng dụng.
Chealion

1
Little Snitch cũng cho phép bạn hiển thị bảng theo dõi hiển thị lưu lượng lên / xuống cho mỗi ứng dụng truy cập kết nối mạng của bạn. Nó trông như thế này: obdev.at/Images/littlesnitch/network-monitor-zoomed.jpg
chrish


7

Bạn có thể nhận được một phần của cách đó với lệnh sau chạy từ bên trong một thiết bị đầu cuối:

sudo lsof |grep TCP | grep ESTAB

Điều này sẽ liệt kê tất cả các kết nối TCP mở. Cột đầu tiên sẽ liệt kê các ứng dụng tạo kết nối, do đó bạn có thể tìm ra đâu là thủ phạm có khả năng. Một vài ví dụ về dòng đầu ra có thể trông như sau:

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)

Vì vậy, tôi có thể thấy rằng cả Mail và ssh đều đang sử dụng kết nối. Nếu giải pháp không rõ ràng từ điều này, bạn có thể sử dụng dtrace để biết thêm chi tiết. Cụ thể, hãy kiểm tra DTrace Tools , một số trong số đó đã được cài đặt trên máy Mac của bạn dưới / 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

Tôi nghĩ rằng cái bạn muốn cho tình huống của bạn có thể là tcpsnoop hoặc tcptop , dường như không có sẵn trên máy Mac, điều này khiến tôi tự hỏi liệu có một số vấn đề về porting.


Là sudo cần thiết ở đây?
Richard Hoskins

Đó là nắm bắt các kết nối từ những người dùng khác có thể tạo kết nối mạng. Ngay cả khi bạn là người dùng duy nhất, có thể một số tài khoản hệ thống có thể thực hiện kết nối mạng.
Tim

7

sử dụng iftop

Bước 0: cài đặt iftop qua MacPorts hoặc Homebrew (điều này cũng sẽ tự động cài đặt bất kỳ phụ thuộc nào)

sudo port install iftop
brew install iftop

Bước 1: xem danh sách "giao diện" mạng trên hệ thống của bạn (theo mặc định iftop sử dụng en0, trên băng thông rộng Cricket cung cấp cho bạn một màn hình trống)

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

Bước 2: chạy iftop với các "giao diện" mạng khác nhau cho đến khi iftop hoạt động (ppp0 trên hệ thống của tôi)

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

Bước 3: thoát iftop bằng cách đẩy "q"


1
Trường hợp nào có được iftoptrên OS X? sudo: iftop: command not found
Daniel Beck

Chạy "sudo port install iftop" (nếu bạn đã cài đặt macports). Điều này sẽ cài đặt iftop và các phụ thuộc của nó.
Russian_spy

1
Cảm ơn. Nó cũng có sẵn trên Homebrew. Thông tin này sẽ hữu ích như một phần của bài đăng mặc dù ;-)
Daniel Beck

Thật tuyệt, tôi đã phải sử dụng một giao diện khác (en1), lúc đầu có màn hình trống. Ngoài ra, +1 cho homebrew thay vì macports.
noio

3

Nettop là một công cụ dòng lệnh tích hợp. Bạn có thể bắt đầu nó trong Terminal bằng cách gõ nettop. Chế độ xem mặc định hơi dài dòng, vì vậy tôi luôn nhấn cdphím để xem một ứng dụng trên mỗi dòng ( c) và xem mức sử dụng băng thông hiện tại thay vì tổng lưu lượng mạng ( d). Bạn có thể cần tối đa hóa cửa sổ terminal để xem tất cả các cột.

Thêm thông tin và ảnh chụp màn hình ở đây .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.