A ponte virtual do Linux suporta VLAN's?

3

A ponte virtual do Linux (configurada, por exemplo, com ip ou brctl ) suporta VLANs? Por exemplo, configure portas de acesso em diferentes VLANs e portas de tronco com apenas certas VLANs habilitadas. Apenas a opção no meu arquivo de configuração do kernel ( 3.2.0-4-686-pae ) referente à VLAN e à bridge é CONFIG_BRIDGE_EBT_VLAN , mas, como eu entendo, isso permite a filtragem de campos 802.1q VLAN para ebtables .

    
por Martin 24.03.2015 / 13:22

2 respostas

5

Não é um problema, é a maneira como a maioria dos sistemas openWRT conecta as portas wlan e switch na mesma LAN. Aqui está um exemplo da configuração no meu sistema openWRT que tem duas redes wifi, uma para uso privado e outra para convidados:

# brctl show
bridge name     bridge id               STP enabled     interfaces
br-vlan2        7fff.a0f3c15eb708       no              eth0.2
                                                        wlan0
                                                        wlan1
br-vlan3        7fff.a0f3c15eb708       no              eth0.3
                                                        wlan0-1
                                                        wlan1-1

Alguma explicação extra:

O típico hardware openwrt (acima está em um TP-Link WDR4300) possui um switch que lida com todas as portas físicas; às vezes, a porta WAN física é uma interface eth separada na CPU SoC. O switch está conectado à CPU com um tronco (os pacotes nesta conexão são marcados com uma tag VLAN). Então eth0.2 é a VLAN2 que é simplesmente conectada a 4 das portas de switch físicas, sem a tag VLAN.

Então você deve ver o br-vlan2 simplesmente como a "rede LAN", as VLANs são usadas devido à necessidade, pois há apenas uma conexão da CPU para o switch.

Uma ponte ethernet no Linux pode ter VLANs e interfaces físicas como membros. Isso está de acordo com minhas expectativas, pois uma interface de VLAN se comporta como uma interface física no Linux, tendo seu próprio roteamento, firewall etc., como qualquer interface física. Espero que você também possa adicionar VLANs diferentes à bridge, se você não se importar com a insanidade que se segue:)

Eu ainda não tentei criar uma ponte entre uma interface física como eth0 que também carrega o tráfego marcado com VLAN ... Eu não sei se esses pacotes marcados também serão vinculados.

    
por 24.03.2015 / 13:28
1

Um truque é dizer explicitamente à bridge que está tudo bem passar o tráfego de vlan com o comando vconfig. o abaixo irá fazê-lo na linha de comando e irá embora com uma reinicialização. Para que isso aconteça na reinicialização, consulte link

brctl addbr br0
brctl addif br0 eth0
vconfig add br0 100
ifconfig br0.100  127.16.0.128 netmask 255.255.255.0

o ifconfig acima deve funcionar em eth0 também porque br0 e eth0 são vinculados.

    
por 20.01.2017 / 01:34