Wie entferne ich eine Bridge mit einer IP-Adresse? das wurde manuell aufgerufen und ist nicht in / etc / network / interfaces?
$ ifconfig br100 br100 Link encap:Ethernet HWaddr 00:00:00:00:00:00 inet addr:172.16.0.5 Bcast:172.16.0.255 Mask:255.255.255.0
Kann es nicht löschen:
# brctl delbr br100 bridge br100 is still up; can"t delete it
Kann nicht mit ifdown heruntergefahren werden:
# ifdown br100 ifdown: interface br100 not configured
Kommentare
- Versucht
ifconfig br100 down?
Antwort
Ich habe es herausgefunden:
# ip link set br100 down # brctl delbr br100
Kommentare
- Um alle Bridge-Schnittstellen zu löschen, führen Sie
sudo ip link show | grep br- | awk -F ':' '{print $2}' | tr -d ' ' | while read b; do sudo ip link set "$b" down; sudo brctl delbr "$b"; done
Antwort
$ sudo ip link delete br0 type bridge
das ist alles
Kommentare
- Das heißt, wenn Sie sich auf einem System mit
iproute2wie z GNU / Linux-Distributionen. - Ist die Bridge vom Typ " " hier wirklich erforderlich, scheint sie auch ohne zu funktionieren diese
Antwort
Um dies für die Zukunft zu klären.
ifup und ifdown sind Befehle aus einigen Linux-Varianten. Und werden verwendet, um Netzwerkeinstellungen zu steuern, die in /etc/network/interfaces für Debian-basierte Systeme und /etc/sysconfig/network-scripts/ifcg* auf Redhat-basierten Systemen festgelegt sind (andere kann ich nicht kommentieren).
Das manuelle Erstellen und Entfernen von Schnittstellen erfolgt mit ifconfig (oder ip, was etwas schwieriger zu verwenden ist). . Bridges können mit brctl
gesteuert werden. Nachdem alle Schnittstellen von einer Bridge mit brctl delif <bridg> <if> entfernt wurden, kann sie verschoben werden „down state“ mit ifconfig br100 down (oder ip link set br100 down) und kann jetzt mit brctl delbr br100 entfernt werden
Bitte beachten Sie, dass die Verwendung von network-manager zum Verwalten Ihrer Netzwerke dazu führen kann, dass Ihre manuell geänderten Schnittstellen zurückgesetzt werden.
Kommentare
- Es scheint eine gewisse Arbeitsteilung zwischen
brctlundip/ifconfigzu geben (wie aus der akzeptierten Antwort hervorgeht oben unter unix.stackexchange.com/a/31765/262897 ), aber auch einige Überschneidungen in der Funktionalität (wie z. B. unix.stackexchange.com/a/324535/262897 ). Sozusagen " Brücken können mitbrctl" gesteuert werden die Geschichte. Gibt es eine einfache Möglichkeit, die Beziehung zwischen zwei / drei zusammenzufassen? -
brctlsteuert das Bridge-Gerät. Zum Beispiel bindet es die realen Netzwerkgeräte zusammen, um ein Bridge-Netzwerkgerät zu erstellen. Das dann erstellte Bridge-Gerät ist fast wie jedes andere Netzwerkgerät und Sie steuern es mit den Befehlenip/ifconfig. Um echte Schnittstellen oder die Bridge zu entfernen, muss zuerst die Schnittstelle mitip/ifconfigheruntergefahren werden. Kurz gesagt,brctlsteuert die Bridge-Erstellung und die Schnittstellenbindungen.ip/ifconfigStatus und Adressen der Netzwerkschnittstelle steuern (Bridge-Gerät ist auch Netzwerkschnittstelle).
Antwort
Unter macOS und möglicherweise einigen BSD-Systemen:
sudo ifconfig [bridge-name] down sudo ifconfig [bridge-name] destroy
Kommentare
- Hat für mich an FreeBSD gearbeitet!
Antwort
Wie wäre es?
docker network prune
Kommentare
- Das funktioniert nicht, wenn die Bridge nicht von Docker konfiguriert wurde, oder?
- Es wird wahrscheinlich ' nicht, aber in meinem Fall wurde das Problem gelöst.
- Sie haben meine 3 Tage der Verzweiflung gelöst
Antwort
Zuerst müssen Sie alle mit Ihrer Bridge verbundenen Schnittstellen mit diesem Befehl löschen.
ovs-vsctl del-port br-ex INTERFACE_NAME
Dann können Sie die Brücke löschen.
ovs-vsctl del-br br-ex
Antwort
Auch run:
virsh net-list --all sudo virsh net-list --all sudo virsh net-destroy default sudo virsh net-undefine default [...] sudo nmcli connection show sudo nmcli connection delete br0 [...]
vorher Verwenden Sie den Befehl in Robos Antwort, wenn Sie GNU / Linux verwenden.