İfconfig olmadan TX / RX baytları nasıl alınır?


62

Yana ifconfiggörünüşte büyük Linux dağıtımları kaldırılacak ve yerini, ben hakkında bir şeyler öğrenebilirim diye düşündüm ipyerine kullanılacak gerekiyordu aracı ifconfig.

Ve burada bir sorunla karşılaştım: kendi başına koşarken, ifconfigdiğer bilgilerin yanı sıra her arabirimde alınan / iletilen bayt sayısını gösterir. Bunu almanın bir yolunu bulamadım ip. Bu araçta böyle bir işlev yok mu? Bu istatistikleri almak için başka hangi yerleşik araçları kullanabilirim?


Ayrıca kontrol edebilirsiniz netstat. linux.die.net/man/8/netstat
SunSparc

Yanıtlar:


53

Başka bir seçenek / proc dosya sistemini kullanmaktır. / Proc / net / dev dosya yapılandırılmış ağ arayüzleri ile ilgili istatistikleri içerir. Her satır bir ağ arayüzüne ayrılmıştır ve alma ve gönderme için istatistikler içerir. İstatistikler, toplam alınan / iletilen bayt, paket, damla, hata vb. Sayıları içerir.

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

Veya tüm ağ arayüzlerini ve ilgili istatistikleri görüntüleyebilen netstat komutunu deneyebilirsiniz :

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/devkabul, IMO çözümlerinin en temiz biçimine sahiptir.
justinas

İstatistikleri gösterdi cat /proc/net/devne kadar süre için?
lalebarde

Tx / rx'den nasıl yararlanabilirsiniz /proc/net/dev?
Piotr Kula

1
Çıktının 3. ve 11. alanlarını ayırmaya çalışın, awk '/: / {print (1 $, 3 $, 11 $) gibi bir şey}' </ proc / net / dev
dsmsk80

55

ipİproute2 paketinin bir parçası olan komut yeni bir araçtır. Alt linkkomut, cihazları / arayüzleri yönetmek içindir.

Kullanarak bir arayüzün istatistiklerini alabilirsiniz 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
procCevap temiz ve hafif olsa da , bu cevap muhtemelen akla uygun ifconfigolarak değiştirilerek tasarlandığından , araç için bir "değiştirme" ye en yakın olanıdır ifconfig.
Moshe Katz

2
ip -s link show dev eth0sadece eth0’da trafik göstermek için
pim

4
Bunu insan tarafından okunabilir bir biçimde elde etmek için (bayt yerine mb / gb / tb cinsinden raporlama) -hbayrağı kullanın . Mesela ip -h -s link.
Joseph Redfern

46

Gerekli tüm bilgileri proc ile alabilirsiniz.

# 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

Ayrıca iptables ve ayrıştırma çıktılarını kullanabilirsiniz.

Alınan paketler için

# iptables -L INPUT -n -v

iletilen paketler için

# iptables -L OUTPUT -n -v 

Sunucu bir ağ geçidi ise, FORWARD zincirini de ayrıştırmalısınız.


2

Dosyayı okuyabilir /sys/class/net/wlp3s0/statistics/rx_bytesve başka bir komutu çağırmadan doğrudan rx_byes'i alabilirsiniz, vnstataynı zamanda iyidir. Linux tüm bilgileri bildiğim gibi dosyalarda saklar, bu dosyaları bulmak ve bilgi edinmek daha iyidir. İlgili dosyayı bulmak zor.


2
Topluluğa hoşgeldiniz! Aferin, bu doğru, ancak bazı eski çekirdeklerin bu dosyaları sağlamadığını unutmayın. Size başarılar diliyoruz! ;)
FarazX
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.