Eu tenho um problema de rede em que os quadros com um MAC de origem que corresponde a um dos MACs de origem do meu host estão chegando ao host - um aparente duplicado MAC, loop ou outro problema L2.
Acredito que esta seja a situação, porque as tabelas MAC (tabelas CAM) da minha ponte linux registram um MAC local (para uma máquina virtual hospedada) como estando na porta upstream, e os logs do kernel mostram erros:
bridgename: received packet on bond0.2222 with own address as source address
Gostaria de obter mais detalhes sobre esses pacotes / quadros "não autorizados", mas não consigo descobrir como zerá-los. Com o tcpdump, você pode filtrar um MAC de origem específico ('ether src MAC'), mas isso se baseia nos bytes no quadro - não se o quadro foi "enviado" versus "recebido". Normalmente, assumimos que um quadro com o MAC de origem significa que o estamos enviando, mas se um quadro duplicado for recebido, o conteúdo parecerá exatamente o mesmo para o filtro.
Como observar se um quadro foi recebido ou transmitido em uma captura de pacote?
tcpdump -L
para interfaces see suportado,
ngrep -d dev
tcpdump -i <interface> inbound
(ou "de saída") funciona?