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
iproute2
wie 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
brctl
undip/ifconfig
zu 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? -
brctl
steuert 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/ifconfig
heruntergefahren werden. Kurz gesagt,brctl
steuert die Bridge-Erstellung und die Schnittstellenbindungen.ip/ifconfig
Status 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.