Estou com o mesmo problema ao executar o ping do meu dispositivo de destino Ethernet a partir de uma máquina com Windows 7 (Enterprise, SP1).
Na minha configuração há 2 adaptadores USB2Ethernet e a interface Ethernet no Windows vem do driver do adaptador.
Esta configuração de hardware funciona com certeza (quando faz ping do Linux). Mas não do Windows.
Infelizmente, sua resposta não esclarece a raiz do problema.
Se você quer dizer que a resposta do ICMP tem um endereço MAC errado, a questão é por que ela está errada. Se você estiver usando software pronto para uso (ferramentas padrão fornecidas com o sistema operacional) e sem solicitações / respostas ICMP feitas à mão, a pergunta ainda estará aberta, qual é a raiz do endereço MAC errado. problema?
A pilha TCP / IP (com a implementação do ICMP sendo parte dela) trabalha o AFAIU primeiro descobrindo o endereço MAC. via solicitação de difusão ARP e, em seguida, seleciona o destino MAC de destino. com base na resposta dada [s].
De qualquer forma, tentei configurar a entrada ARP estática para o IP de destino (tentei o endereço MAC do USB2Ethernet conectado ao ponto Windows e ao endereço MAC da interface Ethernet de destino). Sem sorte até agora.
No sistema de destino (o que está sendo pingado), posso ver que as respostas ICMP são realmente enviadas, mas o sistema Windows parece estar filtrando-as.
Com o Wireshark ouvindo a porta, o problema é resolvido e a rede com o sistema de destino funciona perfeitamente (ICMP e todos os outros protocolos).
Suponho que tenha algo a ver com o modo promíscuo em que o Wireshark traz a interface Ethernet enquanto sniffing e / ou algumas configurações / serviços do Windows dos quais não conheço.