बैश में नेटवर्क डिवाइस का नाम पता लगाना?


12

मैं एक हैक को ड्रम करने की कोशिश कर रहा हूं जो बैश के माध्यम से किसी के कंप्यूटर पर सक्रिय नेटवर्क उपकरणों के नाम का उत्पादन करेगा। मैं इसे काम के लिए बना रहा हूं। मैं यह कार्य कैसे करूं? मैं केवल स्पष्ट रूप से "wlan0" या "eth0" या किसी भी सामान्य बकवास का उपयोग नहीं करना चाहता क्योंकि कुछ OS अलग-अलग नामों का उपयोग करते हैं (जैसे उदाहरण के लिए pfSense)।

जवाबों:


28

यह निर्भर करता है कि 'सक्रिय' से आपका क्या तात्पर्य है - यदि आप सिस्टम पर सभी नेटवर्क उपकरणों के नाम देखना चाहते हैं, तो आप / sys / class / net निर्देशिका की सामग्री को देख सकते हैं।

$ ls /sys/class/net
eth0  lo  wlan0

स्थिति को देखने के लिए, आप ipकिसी भी linkऑब्जेक्ट पर कमांड का उपयोग कर सकते हैं - आप उन विशेष क्षेत्रों को प्राप्त करने के लिए आउटपुट को पार्स कर सकते हैं जिन्हें आप चाहते हैं उदाहरण के लिए सिर्फ डिवाइस का नाम और राज्य देखें

$ ip -o link show | awk '{print $2,$9}'
lo: UNKNOWN
eth0: DOWN
wlan0: UP

यदि आप उबंटू का एक आधुनिक डेस्कटॉप संस्करण चला रहे हैं (नेटवर्क-प्रबंधक सेवा द्वारा प्रबंधित इंटरफेस के साथ), तो आपको एक समान डिवाइस स्थिति सूची का उपयोग करने में सक्षम होना चाहिए nmcli

$ nmcli dev status
DEVICE     TYPE              STATE
wlan0      802-11-wireless   connected
eth0       802-3-ethernet    unavailable

या, विशेष फ़ील्ड में आउटपुट को इस तरह से सीमित करने के लिए जो स्क्रिप्ट में अधिक आसानी से उपयोग किया जाता है

$ nmcli --terse --fields DEVICE,STATE dev status
wlan0:connected
eth0:unavailable

यदि आप नेटवर्क-मैनेजर का उपयोग कर रहे हैं, तो आप डिवाइस और कनेक्शन गुणों को DBUS के माध्यम से भी एक्सेस कर सकते हैं - उदाहरण के लिए देखें Dbus Tutorial - नेटवर्क मैनेजर के साथ मज़ा


2

आप ifconfigथोड़े छोटे आउटपुट उपयोग के लिए सक्रिय नेटवर्क उपकरणों का पता लगाने के लिए उपयोग कर सकते हैं ifconfig -sifconfigसक्रिय इंटरफेस को प्रिंट करता है, जिसके साथ -aआप उन सभी इंटरफेस को प्रिंट कर सकते हैं जो सिस्टम द्वारा नेटवर्क इंटरफेस के रूप में पहचाने जाते हैं।

या उपयोग करें ip addr


0

हो सकता है कि मुझे सीधे उत्तर की जानकारी न हो लेकिन मैं आपको नेटवर्क कमांड की एक सूची दूंगा और हो सकता है कि वहाँ से आप इसे जोड़ने की कोशिश कर सकें जो आपको करने की आवश्यकता है।

नेटवर्क देखने के लिए, और एकल कंप्यूटर पर सक्रिय नेटवर्क उपकरणों के नाम को आउटपुट करने के लिए, आप निम्न आदेशों को आज़मा सकते हैं:

ifconfig

यह कमांड हमें सक्रिय नेटवर्क उपकरणों का पता लगाने की अनुमति देता है। आप ifconfig -s कमांड का उपयोग छोटे आउटपुट उपयोग के लिए भी कर सकते हैं। आप किसी विशेष इंटरफ़ेस को कॉन्फ़िगर करने के लिए इस कमांड का उपयोग कर सकते हैं

ip addr

यह कमांड हमें नेटवर्क नेटवर्क सूचना देखने की अनुमति देता है।

tcpdump

यह कमांड एक नेटवर्क स्निफर है। यह क्या करता है यह एक नेटवर्क इंटरफ़ेस से पैकेट कैप्चर करता है और उन्हें आपके लिए व्याख्या करता है।

यदि आपको कभी भी अनुमति से वंचित संदेश मिलता है, तो बस: **gksu yourcommand**इसके लिए रूट अनुमतियां प्राप्त करें और कमांड को बाध्य करें।

findsmb

आप इस कमांड का उपयोग उन मशीनों के बारे में जानकारी सूचीबद्ध करने के लिए कर सकते हैं जो SMB नाम के प्रश्नों का जवाब देती हैं।

स्रोत: http://www.gymforgeeks.com/topic/358445-/

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.