Linux VLAN como uma conexão “equivalente a fio” verdadeira?

0

Esta é uma reescrita completa da pergunta original, devido principalmente à grande confusão que minha ignorância original causou. Essa confusão foi tão grave que decidi que a questão original tinha que desaparecer, para não enganar os futuros pesquisadores.

As caixas "OUT1" e "OUT2" querem falar umas com as outras. Isso é tudo que eu sei sobre eles, além do fato de que eles precisam de um conector GigE Cat5e, e que eles não usarão mais que 50Mbps (em cada sentido, full-duplex). Eu não sei quais sistemas operacionais eles executam (eles poderiam ser Arduinos ou Crays por tudo que eu sei). Eu não sei se eles usarão IPv4 ou IPv6 (ou ambos), nem sei qual intervalo (s) de endereço eles usam, nem sei quais protocolos de nível superior eles podem estar usando. OUT1 e OUT2 podem se comunicar entre si de qualquer forma desejada.

Por tudo o que sei, OUT1 e OUT2 podem ser portas em switches nos quais dezenas de máquinas estão conectadas, todas as quais querem falar umas com as outras da maneira que desejar.

As únicas conexões disponíveis são as caixas Linux "A" e "B" na minha rede, às quais interfaces dedicadas foram adicionadas para OUT1 e OUT2 ao plug-in.

Eu preciso rotear todo o tráfego entre OUT1 e OUT2 e, por padrão, nenhuma das minhas interfaces deve ter um endereço IP (basta parecer um simples switch).

Até agora, isso soa como um trabalho para uma ponte ( brctl , sem o endereço IP definido) combinado com alguma forma de tunelamento entre A e B, embora eu não tenha certeza de qual túnel seria o mais simples. / p>

Aqui está uma foto bonita:

+------+   +---+    /\/\/\/\/\/\/\/\/\/\    +---+   +------+
| OUT1 |---| A |---<My Internal network >---| B |---| OUT2 |
+------+   +---+    \/\/\/\/\/\/\/\/\/\/    +---+   +------+
             \                                / 
              \_____ Looks like a cable _____/

Para discussão futura, digamos que as interfaces voltadas para dentro em A & B são eth0 e as interfaces voltadas para fora (para OUT1 e OUT2) são eth1 .

Mas espere, tem mais!

Os proprietários de OUT1 e OUT2 gostariam de ajustar o comportamento de A e B e o caminho entre eles para coisas como QoS. Quando solicitado (por meio de um e-mail analisado automaticamente), precisamos expor temporariamente um servidor da Web (sendo executado em outra máquina) em A e B com um endereço IP IPv4 OUT1 e OUT2 com os quais ambos podem se comunicar. O email de solicitação especificará o endereço IPv4 a ser usado. Para OUT1 e OUT2, parece que o servidor está sendo executado no "switch".

Outro quadro bonito:

+------+   +---+    /\/\/\/\/\/\/\/\/\/\    +---+   +------+
| OUT1 |---| A |---<My Internal network >---| B |---| OUT2 |
+------+   +---+    \/\/\/\/\/\/\/\/\/\/    +---+   +------+
                             |
                           +---+
                           | C | webserver
                           +---+

O servidor da Web e a análise de e-mail funcionam bem por conta própria, mas fazer com que apareça em A e B quando desejado e, em seguida, desaparecer é um problema.

Meu palpite é que brctl não está à altura da tarefa (pelo menos não sozinho). As pesquisas informam que talvez precisemos usar algo como ip do comando macvlan em adição ou em substituição. Mas isso é apenas um palpite de uma busca bastante ignorante.

Duas perguntas:

  1. Como devo implementar o recurso tipo switch entre as interfaces voltadas para fora em A & B?

  2. Como devo fazer o servidor da Web aparecer e desaparecer nas interfaces voltadas para fora em A & B?

por BobC 28.03.2014 / 23:24

1 resposta

0

Você não descreveu suas conexões externas, mas meu palpite é que você precisará usar uma VPN em vez de uma VLAN ou MPLS. Eu não joguei com MPLS, mas como VLANs, eu entendo que eles existem abaixo do nível TCP / IP e é improvável que seu ISP carregue esse tráfego sem que você os pague.

Tenho certeza de que usar drivers OpenVPN with TAP fará o que você está procurando (mas eu não usei isso antes).

    
por 29.03.2014 / 05:02