Nethogs ioctl स्थानीय IP की स्थापना करते समय विफल रहा


21

जब मैंने अपने इंटरनेट बैंडविड्थ पर नजर रखने की कोशिश की nethogs

$ sudo nethogs eth0

मुझे निम्नलिखित त्रुटि मिली:

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

यह आउटपुट है 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

जवाबों:


24

आमतौर पर आपको वह जवाब मिलता है जब आप एक इंटरफ़ेस की निगरानी करने का प्रयास करते हैं जिसका कोई आईपी पता असाइन नहीं किया गया है (शायद जुड़ा नहीं है)।

आउटपुट से ip addrपता चलता है कि आपके इंटरफेस में से केवल एक का आईपी पता है, अर्थात् usb0

तो sudo nethogs usb0अंत में वांछित परिणाम देना चाहिए।

जैसा कि विभिन्न इंटरफेस का उल्लेख करने वाली टिप्पणियां हैं: यदि ip addrआईपी-पते के साथ कई इंटरफेस दिखाए गए हैं तो आपके लिए दो विकल्प हैं:

  • ip route show | grep defaultआपको एक डिवाइस दिखाएगा जिसका उपयोग "सब कुछ बाहर" तक पहुंचने के लिए किया जाता है। उदाहरण के लिए
    default via 192.168.0.253 dev eth1 proto static metric 100मुझे बताता है कि मुझे उपयोग करना हैsudo nethogs eth1
  • अपने लक्ष्य को आंतरिक यातायात पर (एक स्थानीय नेटवर्क के भीतर या यहां तक कि एक ही मेजबान पर आभासी मशीनों के बीच) आप देखने के लिए है, तो कर सकते हैं सभी उपकरणों के द्वारा पाया के साथ प्रयास करें ip addrया ip link

1
धन्यवाद। यह sudo nethogs eth1मेरे लिए था।
टायलर Collier

मेरे मामले में, 64 बिट ubuntu 15.05 में, usb0का नाम बदला गया है wlp6s0
अनवर

जाँच करें कि कौन सा इंटरफ़ेस मुख्य आईपी का उपयोग करता है ifconfigऔर फिर इसका उपयोग करेंsudo nethogs <HERE>
एंड्रयू ओडेन्डल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.