Isso é permitido pelos RFCs que definem o protocolo IP. Na verdade, para ser mais específico, é permitido porque não é expressamente proibido pelo RFC 792 ( link ).
Alguns desenvolvedores do kernel, ao escrever implementações TCP / IP, simplesmente acharam mais fácil gravar o código que gera pacotes de resposta ICMP, de modo que o endereço de origem (do pacote de resposta) é o endereço IP mais conveniente. a primeira interface ou a primeira interface a ser configurada).
A maioria das pessoas percebe isso pela primeira vez ao usar o traceroute. As respostas do traceroute tendem a vir da interface "mais próxima", como seria de se esperar. No entanto, como o traceroute é baseado em erros "ttl excedidos" do ICMP, esses pacotes podem vir de qualquer endereço IP no sistema.
Não estou dizendo que os desenvolvedores do kernel são preguiçosos, estou dizendo que esse tipo de código não é trivial. Descobrir qual interface é "mais próxima" é na verdade bastante difícil em muitas implementações de TCP / IP porque a interface em que um pacote entrou no sistema não é registrada. Levar essa informação do berço ao túmulo apenas para que o traceroute pareça bonito é um desperdício.
A maioria das pessoas não sabe disso porque (1) a maioria dos hosts tem apenas 1 endereço IP, ou (2) muitos fornecedores criaram cuidadosamente sua implementação TCP / IP para dar o passo extra de garantir que os erros ICMP venham do IP endereço que um ser humano esperaria. A Cisco foi a primeira a fazer isso e, como eles são tão grandes, qualquer um que não fizer isso é considerado como tendo escrito código com bugs. (Eu trabalhei em um fornecedor que fazia um roteador e, depois de me cansar de dizer cliente após cliente "não é um erro, olhe para o RFC!", Desisti e o implementei para ser "como a Cisco", então eles não t tem que continuar explicando isso para os clientes).
Para o ping, o RFC 792 está bem claro que a resposta deve vir do endereço IP que recebeu o pacote. A razão pela qual o MS pode não fazer isso é que você passou por algum tipo de NAT, ou o seu mecanismo de alias é tão leve que o endereço IP real para o qual o pacote foi enviado é descartado por uma camada e quando chega ao Processamento ICMP (ping) não há outra coisa lógica a fazer.
Se isso estiver causando um problema, execute ping no outro endereço IP.