Desative e exclua a interface da ponte

50

Como removo uma ponte que possui um endereço IP criado manualmente e não está em / 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

Não é possível excluí-lo:

# brctl delbr br100
bridge br100 is still up; can't delete it   

Não é possível reduzi-lo com ifdown:

# ifdown br100                                                  
ifdown: interface br100 not configured     
Lorin Hochstein
fonte
4
Tentou ifconfig br100 down?

Respostas:

85

Descobri isso:

# ip link set br100 down
# brctl delbr br100
Lorin Hochstein
fonte
13

Para esclarecer isso para o futuro.

ifupe ifdownsão comandos de alguns tipos de linux. E são usados ​​para controlar as configurações de rede definidas /etc/network/interfacespara sistemas baseados em debian e /etc/sysconfig/network-scripts/ifcg*em sistemas baseados em Redhat (não posso comentar sobre outros).

A criação e remoção de interfaces manualmente é feita usando ifconfig(ou ipque é um pouco mais complicado de usar). As pontes podem ser controladas combrctl

Portanto, após remover todas as interfaces de uma ponte, brctl delif <bridg> <if> ela pode ser movida para "estado inativo" com ifconfig br100 down(ou ip link set br100 down) e agora pode ser removida combrctl delbr br100

Observe que o uso network-managerpara gerenciar suas redes pode fazer com que as interfaces alteradas manualmente sejam redefinidas.

Manwe
fonte
8
$ sudo ip link delete br0 type bridge

Isso é tudo

robô
fonte
3
Ou seja, se você estiver em um sistema com, iproute2por exemplo, distribuições GNU / Linux.
Phk
5

No macOS e possivelmente em alguns sistemas BSD:

sudo ifconfig [bridge-name] down
sudo ifconfig [bridge-name] destroy
rien333
fonte
1

Primeiro você precisa excluir todas as interfaces vinculadas à sua ponte usando este comando

ovs-vsctl del-port br-ex INTERFACE_NAME

Então você pode excluir a ponte

ovs-vsctl del-br br-ex
NIna
fonte
0

E se?

docker network prune
Czollli
fonte
2
Isso não funcionará se a ponte não tiver sido configurada pelo Docker, funcionará?
Stephen Kitt
Provavelmente não vai, mas no meu caso resolveu o problema.
Czollli 18/10