Frage Wie bekomme ich TX / RX-Bytes ohne ifconfig?


Schon seit ifconfig Englisch: www.mjfriendship.de/en/index.php?op...39&Itemid=32 Ich werde anscheinend in den großen Linux - Distributionen veraltet, ich dachte, ich würde etwas über die ip Werkzeug, das anstelle von verwendet werden soll ifconfig.

Und hier stieß ich auf ein Problem: wenn es alleine läuft, ifconfig zeigt die Anzahl der Bytes an, die auf jeder Schnittstelle neben anderen Informationen empfangen / übertragen werden. Ich konnte keinen Weg finden, das zu erreichen ip. Gibt es in diesem Tool keine solche Funktion? Welche anderen integrierten Tools könnte ich verwenden, um diese Statistiken zu erhalten?


51
2017-08-24 19:28


Ursprung


Sie können auch auschecken netstat. linux.die.net/man/8/netstat - SunSparc


Antworten:


Eine andere Möglichkeit ist die Verwendung des / proc-Dateisystems. Das / proc / net / dev Datei enthält Statistiken über die konfigurierten Netzwerkschnittstellen. Jede Zeile ist einer Netzwerkschnittstelle zugeordnet und enthält Statistiken für Empfang und Übertragung. Die Statistiken enthalten Metriken wie die Gesamtzahl der empfangenen / übertragenen Bytes, Pakete, Drops, Fehler und so weiter.

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

Oder Sie können das versuchen Netstat Befehl, der alle Netzwerkschnittstellen und zugehörige Statistiken anzeigen kann:

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

41
2017-08-24 20:57



/proc/net/dev hat das sauberste Format aller Lösungen, die IMO akzeptiert. - justinas
Statistiken zeigten durch cat /proc/net/dev sind für wie lange Zeit? - lalebarde
Wie bekommst du tx / rx? /proc/net/dev ? - ppumkin
Versuchen Sie das 3. und 11. Feld der Ausgabe zu analysieren, etwa awk '/: / {print ($ 1, $ 3, $ 11)}' </ proc / net / dev - dsmsk80


Das ip Befehl, der Teil des Pakets iproute2 ist, ist das neue Werkzeug. Das link Unterbefehl dient zum Verwalten der Geräte / Schnittstellen.

Wenn Sie die Werte einer Schnittstelle mit verwenden können 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

44
2017-08-24 21:00



Während proc Antwort ist sauber und leicht, diese Antwort ist wahrscheinlich am nächsten zu einem "Ersatz" für die ifconfig Werkzeug, weil es ausdrücklich mit dem Ersatz von entworfen wurde ifconfig im Hinterkopf. - Moshe Katz
ip -s link show dev eth0 um nur den Verkehr auf eth0 anzuzeigen - pim


Sie können alle notwendigen Informationen über proc erhalten

# 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

Sie können auch iptables verwenden und die Ausgabe analysieren.

Für empfangene Pakete 

# iptables -L INPUT -n -v

für übertragene Pakete

# iptables -L OUTPUT -n -v 

Wenn der Server ein Gateway ist, sollten Sie auch analysieren NACH VORNE Kette


39
2017-08-24 20:11





Sie können die Datei lesen /sys/class/net/wlp3s0/statistics/rx_bytes und hole die rx_byes direkt, ohne einen anderen Befehl aufzurufen, vnstat ist auch gut. Linux speichert alle Informationen in Dateien, so wie ich weiß, also finde ich diese Dateien besser und erhalte Informationen. Das Finden der relevanten Datei ist die Herausforderung.


2
2018-03-25 17:06



Willkommen in der Gemeinschaft! Gut gemacht, das ist richtig, aber beachte, dass einige alte Kernel diese Dateien nicht bereitstellen. Wünsche dir Glück und Erfolg! ;) - FarazX