Nethogs ioctl đã thất bại trong khi thiết lập IP cục bộ


21

Khi tôi cố gắng theo dõi băng thông internet của mình với nethogs

$ sudo nethogs eth0

Tôi đã nhận được lỗi sau:

ioctl failed while establishing local IP for selected device eth0. 
You may specify the device on the command line.

Đây là đầu ra của sudo ip addr:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever

2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN qlen1000 link/ether 20:6a:8a:5d:5d:1c brd ff:ff:ff:ff:ff:ff

3: usb0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UNKNOWNqlen 1000
    link/ether 56:10:e4:e0:61:f1 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.10/24 brd 192.168.1.255 scope global usb0
    inet6 fe80::5410:e4ff:fee0:61f1/64 scope link 
       valid_lft forever preferred_lft forever

4: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 20:7c:8f:79:88:ab brd ff:ff:ff:ff:ff:ff

Câu trả lời:


24

Thông thường, bạn nhận được câu trả lời đó khi bạn cố gắng theo dõi một giao diện không có địa chỉ IP được gán (có thể không được kết nối).

Đầu ra từ ip addrcho thấy chỉ một trong các giao diện của bạn có địa chỉ IP, cụ thể là usb0.

Vì vậy, sudo nethogs usb0cuối cùng nên cho kết quả mong muốn.

Vì có ý kiến ​​đề cập đến các giao diện khác nhau: nếu ip addrhiển thị một số giao diện có địa chỉ IP được gán, có hai tùy chọn cho bạn:

  • ip route show | grep defaultsẽ cho bạn thấy một thiết bị được sử dụng để truy cập "mọi thứ bên ngoài". ví dụ
    default via 192.168.0.253 dev eth1 proto static metric 100nói với tôi rằng tôi phải sử dụngsudo nethogs eth1
  • Nếu mục tiêu của bạn là xem xét lưu lượng truy cập nội bộ (trong mạng cục bộ hoặc thậm chí giữa các máy ảo trên cùng một máy chủ), bạn có thể thử với tất cả các thiết bị được tìm thấy bởi ip addrhoặc ip link.

1
Cảm ơn. Đó là sudo nethogs eth1cho tôi.
Tyler Collier

Trong trường hợp của tôi, trong 64 bit ubfox 15.05, usb0được đổi tên thành wlp6s0.
Anwar

kiểm tra xem giao diện nào giữ IP chính bằng cách sử dụng ifconfigvà sau đó sử dụng nó vớisudo nethogs <HERE>
Andrew Odendaal
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.