Excluir porta em uma ponte openvswitch causa alteração no endereço MAC em outra bridge

1

Estou tentando definir um endereço MAC explícito em uma ponte openvswitch chamado br-ex . Eu estou executando o Fedora 20 e usando o nativo ifdown / ifup comandos para configurar a ponte (detalhes do meu arquivos de configuração de rede estão na parte inferior desta questão).

Após recriar novamente o br-ex executando ifdown br-ex seguido por ifup eth0 , minha configuração OVS é assim:

# ovs-vsctl show
1ab8ae7e-e9da-4af9-9226-03b54f5d2544
    Bridge br-int
        Port br-int
            Interface br-int
                type: internal
        Port int-br-ex
            Interface int-br-ex
        Port "tapa1747c68-d3"
            tag: 1
            Interface "tapa1747c68-d3"
                type: internal
    Bridge br-ex
        Port "eth0"
            Interface "eth0"
        Port br-ex
            Interface br-ex
                type: internal
    ovs_version: "2.0.1"

Anote o endereço MAC em br-ex :

# ip link show dev br-ex
80: br-ex: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/ether fa:16:3e:ef:91:ec brd ff:ff:ff:ff:ff:ff

Agora, exclua a porta int-br-ex de br-int , que não é mais conectado de alguma forma a br-ex :

# ovs-vsctl --if-exists del-port br-int int-br-ex

E observe que o endereço MAC em br-ex foi alterado:

# ip link show dev br-ex
80: br-ex: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/ether f2:2a:d3:bf:3c:47 brd ff:ff:ff:ff:ff:ff

O que aconteceu?

Configuração de rede

Eu tenho, em /etc/sysconfig/network-scripts :

# cat ifcfg-br-ex
DEVICE=br-ex
DEVICETYPE=ovs
TYPE=OVSBridge
ONBOOT=yes
OVSBOOTPROTO=dhcp
OVSDHCPINTERFACES=eth0
MACADDR=fa:16:3e:ef:91:ec

# cat ifcfg-eth0
DEVICE="eth0"
ONBOOT="yes"
BOOTPROTO=none
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=br-ex

O que está acontecendo aqui? Por que o endereço MAC em br-ex está mudando? Como eu faço isso ficar?

    
por larsks 23.05.2014 / 03:36

1 resposta

2

Parece que não é possível definir um endereço MAC persistente em uma ponte OVS usando o comando ip set link . Em vez disso, você precisa definir via ovs-vsctl :

ovs-vsctl set bridge br-ex other-config:hwaddr=$MACADDR

Se você estiver no RHEL / CentOS / Fedora, você pode fazer isso definindo o seguinte no seu arquivo de configuração de interface:

OVS_EXTRA="set bridge br-ex other-config:hwaddr=$MACADDR"
    
por 23.05.2014 / 19:57