Como posso conectar duas interfaces com ip / iproute2?

Respostas:

26

Você pode usar o bridgeobjeto ip, o ipcomando ou o bridgecomando que faz parte do iproute2pacote.

Manipulação básica de link

Para criar uma ponte chamada br0, que possui eth0e eth1como membros:

ip link add name br0 type bridge
ip link set dev br0 up
ip link set dev eth0 master br0
ip link set dev eth1 master br0

Para remover uma interface da ponte:

ip link set dev eth0 nomaster

E, finalmente, destruir uma ponte depois que nenhuma interface é membro:

ip link del br0

Manipulação de encaminhamento

Para manipular outros aspectos da ponte, como o FDB ( Forwarding Database ), sugiro que você dê uma olhada no bridge(8) comando . Exemplos:

Mostrar banco de dados de encaminhamento em br0

bridge fdb show dev br0

Desabilite uma porta ( eth0) do processamento de BPDUs . Isso fará com que a interface filtre qualquer bpdu recebido

bridge link set dev eth0 guard on

Configurando o custo STP para uma porta ( eth1por exemplo):

bridge link set dev eth1 cost 4

Para definir o protetor de raiz em eth1:

bridge link set dev eth1 root_block on

O custo é calculado usando alguns fatores, e a velocidade do link é um deles. Usar um custo fixo e desativar o processamento de BPDUs e ativar o root_block é, de alguma forma, semelhante a um guard-rootrecurso dos comutadores.

Outros recursos, como o modo vepa, veb e hairpin , podem ser encontrados na bridge linklista de subcomando.

Manipulação de regras de VLAN

O vlanobjeto do comando bridge permitirá criar filtros de entrada / saída em pontes.

Para mostrar se há algum filtro de entrada / saída de vlan:

bridge vlan show

Para adicionar regras a uma determinada interface:

bridge vlan add dev eth1 <vid, pvid, untagged, self, master>

Para remover regras. Use os mesmos parâmetros que vlan addno final do comando para excluir uma regra específica.

bridge vlan delete dev eth1

Coisas relacionadas:

Comunidade
fonte
Existem parâmetros ponte casal que não podem ser definidas com o bridgeutil, por exemplo ip link set br0 type bridge stp_state 1, pode ver mais comip link help bridge
Cheetah
2

O equivalente a brctl showé bridge link. Você pode mostrar o status da ponte por dispositivo, bridge link show dev eth0mas a ponte examina a interface de rede e informa a qual ponte pertence - e não a quais interfaces de rede pertencem a uma determinada ponte.

Não parece ser equivalente a brctl show br0.

Dominik Heidler
fonte