Como duplicar pacotes multicast em diversas interfaces?

1

Eu gostaria de enviar um fluxo de um servidor Linux para vários clientes Linux através de um endereço multicast. Os clientes estão diretamente conectados ao servidor, mas em interfaces diferentes : bnep0 e bnep1 . Além disso, tanto quanto eu entendo, meus pacotes multicast são roteados para o meu gateway padrão eth0 .

Tabela de roteamento a seguir:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 bnep1
10.0.1.0        0.0.0.0         255.255.255.0   U     0      0        0 bnep0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

Suponho que preciso criar uma regra de roteamento dedicada, para que meus pacotes multicast sejam enviados não para eth0 , mas para bnep0 e bnep1 . Minha pergunta é: como eu poderia fazer isso? Eu tentei usar ip route e iptables -t mangle ... TEE , mas não consegui.

Obrigado antecipadamente.

    
por tvuillemin 25.02.2015 / 12:39

1 resposta

0

A solução não é implementar regras de roteamento para duplicar pacotes nas duas interfaces, mas para fundir as interfaces em uma.

Para isso, você precisa criar e usar uma ponte de rede. A ponte deve ter um endereço IP único, enquanto as interfaces "reais" não devem, mesmo que estejam ativas.

# apt-get install bridge-utils
# ifconfig bnep0 up
# ifconfig bnep1 up
# brctl addbr br0
# brctl addif br0 bnep0
# brctl addif br0 bnep1
# ifconfig br0 10.0.0.1 netmask 255.255.255.0
    
por 04.03.2015 / 16:01