GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erkennen Sie, ob die aktuelle Verbindung mit NetworkManager gemessen wird

Mit dem Dienstprogramm nmcli sind die erforderlichen Schritte:

  1. Stellen Sie sicher, dass NetworkManager Version 1.0.6+ ist:

    $ nmcli -v nmcli tool, version 1.9.0

  2. Überprüfen Sie GENERAL.METERED auf einer Schnittstelle:

    $ nmcli -t -f GENERAL.METERED dev show eth1 GENERAL.METERED:unknown

  3. Werte sind:unknown, yes, no, yes (guessed), no (guessed)

  4. Das Erzwingen des Werts wird folgendermaßen durchgeführt:

    $ nmcli dev modify wlan1 connection.METERED yes Connection successfully reapplied to device 'wlan1' $ nmcli -t -f GENERAL.METERED dev show wlan1 GENERAL.METERED:yes

Und um eine nach Gerät gruppierte Liste zu erhalten:

  $ nmcli -t -f GENERAL.DEVICE,GENERAL.METERED dev show

  GENERAL.DEVICE:wlan1
  GENERAL.METERED:yes

  GENERAL.DEVICE:eth1
  GENERAL.METERED:unknown

  GENERAL.DEVICE:lo
  GENERAL.METERED:unknown

Der Versuch, dies auf Informationen nur über die Standardroute zu reduzieren, würde immer noch einen Aufruf eines anderen Befehls erfordern, da NetworkManager nicht versucht, zwischen mehreren Geräten in einem verbundenen Zustand zu unterscheiden:

  $ nmcli -t -f GENERAL.DEVICE,GENERAL.METERED dev show `ip route list 0/0 | sed -r 's/.*dev (\S*).*/\1/g'`

Sie können den gemessenen Status der aktuellen Verbindung auch über D-Bus abrufen. Von einer Shell aus können Sie busctl verwenden :

busctl get-property org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager Metered

das ist nur ein Befehl, im Gegensatz zu nmcli Lösung, und in anderen Programmiersprachen kann es effizienter sein, D-Bus direkt zu verwenden, anstatt nmcli aufrufen zu müssen .


Linux
  1. Networkmanager Editor kann kabelgebundene Verbindung nicht bearbeiten?

  2. Wie konfiguriere ich VSFTPD mit einer SSL/TLS-verschlüsselten Verbindung?

  3. So drucken Sie die aktuelle Uhrzeit (mit Millisekunden) mit C++ / C++11

  4. Führt ein Shell-Skript in der aktuellen Shell mit sudo-Berechtigung aus

  5. sshfs-Verbindung durch Peer mit Identifizierungsdatei zurückgesetzt

So überwachen Sie die WLAN-Verbindung mit Wavemon von der Befehlszeile in Linux

Erkennen Sie veraltete gemeinsam genutzte Bibliotheken im Speicher mit UChecker

Beheben des Fehlers „Broken Pipe“ mit SSH-Verbindung

Statische IP-Adresse mit NetworkManager für Fedora

Rsync kopiert aktuelles Verzeichnis mit Namen

Aktuelle umask eines Prozesses mit <pid>