Endereço MAC de Multicast errado com mais de uma interface de rede

1

Estou tentando assinar um grupo multicast de uma máquina Red Hat com quatro interfaces de rede, cada uma em uma sub-rede diferente. Ele só funciona se eu ligar o soquete multicast na interface de rede na qual o gateway corresponde ao gateway padrão configurado.

Minha tabela de rotas (saída do comando "route"):

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.1.37.0       *               255.255.255.0   U     0      0        0 eth2
10.1.39.0       *               255.255.255.0   U     0      0        0 eth3
10.1.38.0       *               255.255.255.0   U     0      0        0 eth1
10.1.33.0       *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1002   0        0 eth3
link-local      *               255.255.0.0     U     1003   0        0 eth0
link-local      *               255.255.0.0     U     1004   0        0 eth1
link-local      *               255.255.0.0     U     1005   0        0 eth2
default         10.1.33.1       0.0.0.0         UG    0      0        0 eth0

Cada sub-rede tem um firewall configurado como gateway (em cada arquivo de configuração ifcfg-ethX), em todas as interfaces ele tem o endereço * .1 nessa sub-rede.

Aqui está minha pesquisa usando o Wireshark:

Se eu ligar o soquete em eth0, o sistema operacional envia o pacote de junção multicast com o campo Dst na camada Ethernet definido para 01: 00: 5e: 02: 02: 11, um endereço MAC multicast. O firewall aceita esse pacote e inicia a retransmissão de pacotes para esse grupo multicast.

Se eu ligar o soquete na eth2, o sistema operacional enviará o pacote de junção multicast com o campo Dst na camada Ethernet definido para 84: b8: 02: d2: cd: 88, o endereço MAC físico do firewall. O firewall descarta esse pacote, pois não possui um endereço MAC multicast válido.

Se eu mudar o gateway padrão para 10.1.37.1, o multicast começará a trabalhar na eth2, mas não na eth0.

Existe alguma configuração errada que eu tenha? Existe alguma maneira de obter diferentes grupos de multicast trabalhando em diferentes interfaces de rede ao mesmo tempo?

    
por Yorchus 11.08.2016 / 11:04

0 respostas