Ifconfig के बिना TX / RX बाइट कैसे प्राप्त करें?


61

चूंकि ifconfigस्पष्ट रूप से प्रमुख लिनक्स वितरणों में पदावनत किया जा रहा है, मैंने सोचा कि मैं उस ipउपकरण के बारे में कुछ सीखूंगा जो इसके बजाय उपयोग किया जाना चाहिए ifconfig

और यहां मैं एक समस्या में भाग गया: जब अपने दम पर चलाया जाता है, तो ifconfigप्रत्येक इंटरफ़ेस पर प्राप्त बाइट्स की संख्या / अन्य जानकारी के अलावा प्रेषित दिखाता है। मुझे इससे प्राप्त करने का कोई तरीका नहीं मिला ip। क्या इस टूल में ऐसा कोई फंक्शन नहीं है? उन आँकड़ों को प्राप्त करने के लिए मैं अन्य कौन से अंतर्निर्मित उपकरण इस्तेमाल कर सकता हूँ?


आप भी देख सकते हैं netstatlinux.die.net/man/8/netstat
SunSparc

जवाबों:


53

एक अन्य विकल्प फाइल / सिस्टम का उपयोग करना है। / Proc / net / देव फ़ाइल कॉन्फ़िगर किया गया नेटवर्क इंटरफेस के बारे में आंकड़े शामिल हैं। प्रत्येक पंक्ति एक नेटवर्क इंटरफ़ेस के लिए समर्पित है और इसमें प्राप्त और संचारित करने के लिए आँकड़े हैं। आँकड़ों में मेट्रिक्स जैसे कुल प्राप्त / प्रसारित बाइट्स, पैकेट, ड्रॉप्स, त्रुटियां और इतने ही शामिल हैं।

cat /proc/net/dev

    Inter-|   Receive                                                |  Transmit
     face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed

    lo:    29846937   129576     0    0    0     0          0       0 29846937   129576     0    0    0     0       0          0
 wlan0:    9467393340 8027251    0    0    0     0          0       0 2559312961 5896509    0    0    0     0       0          0

या आप नेटस्टैट कमांड की कोशिश कर सकते हैं जो सभी नेटवर्क इंटरफेस और संबंधित आंकड़े प्रदर्शित कर सकते हैं:

netstat -i

Iface   MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
lo         65536   0   130435      0      0      0   130435      0      0      0 LRU
wlan0       1492   0  8028018      0      0      0  5897361      0      0      0 BMRU

/proc/net/devस्वीकार करते हुए, IMO के सभी समाधानों का सबसे स्वच्छ प्रारूप है।
justinas

द्वारा दिखाए गए आँकड़े cat /proc/net/devकितने समय के लिए हैं?
lalebarde

आपको tx / rx कैसे मिलता है /proc/net/dev?
पायोटर कुला

1
आउटपुट के 3. और 11. क्षेत्र को पार्स करने का प्रयास करें, कुछ-कुछ awk '/: / {
Print

54

ipआदेश जो iproute2 पैकेज का हिस्सा है नया उपकरण है। linkSubcommand उपकरणों / इंटरफेस के प्रबंधन के लिए है।

यदि आप एक इंटरफ़ेस के आँकड़े प्राप्त कर सकते हैं ip -s link

root:~# ip -s link
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
    RX: bytes  packets  errors  dropped overrun mcast
    50679705   529967   0       0       0       0
    TX: bytes  packets  errors  dropped carrier collsns
    50679705   529967   0       0       0       0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:1d:7d:aa:e3:4e brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast
    187663757  308710386 0       0       0       0
    TX: bytes  packets  errors  dropped carrier collsns
    4051284587 532435117 0       0       0       0

6
हालांकि procउत्तर साफ और हल्का है, यह उत्तर संभवतः ifconfigउपकरण के लिए "प्रतिस्थापन" के सबसे करीब है क्योंकि यह स्पष्ट रूप ifconfigसे मन के प्रतिस्थापन के साथ डिजाइन किया गया था ।
मोशे काट्ज़

2
ip -s link show dev eth0eth0 पर ट्रैफ़िक दिखाने के लिए
पीआईएम

4
इसे मानव पठनीय रूप में प्राप्त करने के लिए (बाइट के बजाय mb / gb / tb में रिपोर्टिंग), -hध्वज का उपयोग करें । उदाहरण के लिए, ip -h -s link
जोसेफ रेडर्न

46

आप खरीद के माध्यम से सभी आवश्यक जानकारी प्राप्त कर सकते हैं

# cat /sys/class/net/eth0/statistics/rx_bytes
# cat /sys/class/net/eth0/statistics/rx_packets

# cat /sys/class/net/eth0/statistics/tx_packets
# cat /sys/class/net/eth0/statistics/tx_bytes

इसके अलावा आप iptables और पार्स आउटपुट का उपयोग कर सकते हैं।

प्राप्त पैकेट के लिए

# iptables -L INPUT -n -v

प्रेषित पैकेट के लिए

# iptables -L OUTPUT -n -v 

यदि सर्वर एक प्रवेश द्वार है, तो आपको फ़ॉरवर्ड चेन को भी पार्स करना चाहिए


2

आप फ़ाइल को पढ़ सकते हैं /sys/class/net/wlp3s0/statistics/rx_bytesऔर दूसरी कमांड को कॉल किए बिना सीधे rx_byes प्राप्त कर सकते हैं , vnstatयह भी अच्छा है। लिनक्स फाइलों में सारी जानकारी रखता है जैसा कि मुझे पता है, इसलिए उन फाइलों को खोजने और जानकारी प्राप्त करने के लिए बेहतर है। प्रासंगिक फ़ाइल ढूंढना चुनौती है।


2
समुदाय में आपका स्वागत है! ठीक है, यह सही है, लेकिन ध्यान दें कि कुछ पुरानी गुठली ये फाइलें प्रदान नहीं करती हैं। आपको शुभकामनाएं, और सफलता! ;)
फ़राज़
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.