Wie entferne ich veth-Schnittstellen?

548
dangonfast

Ich bin mir nicht sicher, warum / wann einige vethSchnittstellen in meinem System vorhanden sind ( Ubuntu 16.0. LTS):

» ifconfig | grep veth veth4556676 Link encap:Ethernet HWaddr ee:b9:b9:ed:71:a6  veth8747335 Link encap:Ethernet HWaddr 66:40:47:fd:1f:a7  veth13905bf Link encap:Ethernet HWaddr ae:73:8f:f7:9d:d4  veth2636dd7 Link encap:Ethernet HWaddr fa:b8:3c:d4:52:9c  veth42de626 Link encap:Ethernet HWaddr 92:08:43:90:6e:f3  veth4eedb05 Link encap:Ethernet HWaddr 66:5f:b8:e7:52:05  veth7534db0 Link encap:Ethernet HWaddr 16:9c:06:e6:f2:aa  veth83508c7 Link encap:Ethernet HWaddr 5a:55:6c:ee:e5:7b  veth8f275d6 Link encap:Ethernet HWaddr 46:18:a1:52:7f:e9  veth9f370c9 Link encap:Ethernet HWaddr da:9e:49:37:b4:16  vethb96da94 Link encap:Ethernet HWaddr 42:11:90:11:8a:f4  vethba463c9 Link encap:Ethernet HWaddr 06:40:d5:9a:79:7a  vethd820900 Link encap:Ethernet HWaddr a2:94:53:c8:53:bf  vethdd077a0 Link encap:Ethernet HWaddr 1a:f9:00:93:05:5e  vethef191e6 Link encap:Ethernet HWaddr b2:b0:e1:68:50:7c  vethf70a6f9 Link encap:Ethernet HWaddr a6:a7:72:dd:88:69  

Dies geschieht in einem neu gestarteten System. Ich habe zwei Fragen:

  1. Warum sind diese veth- Schnittstellen vorhanden?
  2. Wie kann ich sie loswerden?

Hinweis: Ich habe in letzter Zeit einige Vagrant / VirtualBox-Sachen gemacht, daher könnte dies der Grund sein.

0
veth-Schnittstellen sind virtuelle Schnittstellen, die zum Überbrücken von VMs verwendet werden. Ich bin nicht mit Vagrant vertraut, aber ich würde erwarten, dass dies die Ursache ist - da dies dem von Docker sehr ähnlich ist. davidgo vor 6 Jahren 0
"Veth" sind sicherlich virtuelle Ethernet-Schnittstellen, die zur Bereitstellung einer Internetverbindung zu virtuellen Maschinen verwendet werden. C0deDaedalus vor 6 Jahren 0
@dangonfast, siehe [Was soll ich tun, wenn jemand meine Frage beantwortet?] (https://superuser.com/help/someone-answers) C0deDaedalus vor 6 Jahren 0

1 Antwort auf die Frage

1
C0deDaedalus

Warum sind diese vethSchnittstellen vorhanden?

Möglicherweise weil Sie eine Virtualisierungsplattform wie vmware oder virtualbox oder vagrant verwenden.

vethSchnittstellen loswerden !

Ich denke, dass es eine bessere Lösung gibt, aber vorerst können Sie es auf diese Weise tun.

  • Den Namen bekommen von interfaces

    ifconfig | grep "^veth" | cut -d' ' -f1 

    Wählt hier grep "^veth"nur die Schnittstellen (aufgelistet nach ifconfig) aus, die mit beginnen, vethund cutzeigt nur die Namen, indem dder Inhalt entfernt und nur das erste fFeld angezeigt wird.

  • Jetzt müssen wir die Treiber für diese Schnittstelle mit beenden

    ifconfig vethxxxxxx down 

    Sie können dies auch mit dem ipBefehl tun (wie von @dirkt in den Kommentaren vorgeschlagen ).

    ip link set $veth down 

    Da es aber zu viele gibt, verwenden Sie eine forSchleife wie folgt:

    for veth in $(ifconfig | grep "^veth" | cut -d' ' -f1) do ifconfig $veth down # OR this ip link set $veth down done 
  • Hier ist ein Einzeiler für das Einfügen von Kopien:

    for veth in $(ifconfig | grep "^veth" | cut -d' ' -f1); do ifconfig $veth down; done 

Fühlen Sie sich frei, der Antwort mehr hinzuzufügen.

Übrigens, ich würde die Verwendung von `ip` vor dem älteren` ifconfig` empfehlen - `ip` kann die Netzwerkfunktionen des Kernels nutzen, die` ifconfig` nicht verwenden kann, obwohl dies für dieses spezielle Problem nicht wichtig ist. dirkt vor 6 Jahren 0
@dirkt, danke für deinen Vorschlag. Da ich den Befehl nicht häufig verwende, könnten Sie die Antwort für die Verwendung des `ip`-Befehls bearbeiten. Vielen Dank. C0deDaedalus vor 6 Jahren 0