Ok, eu descobri o problema.
Não foi um problema com o roteamento. Como 192.168.2.2
é realmente um adaptador virtual que, em algum momento, fica inativo, mesmo que a rota esteja correta, o Windows estava ignorando a rota porque a interface usada para a rota não estava disponível no momento do acesso. Portanto, estava resolvendo isso para a rota padrão na interface 10.194.13.1
, mesmo se a métrica fosse maior.
De lá, foi perdido de alguma forma, tentando desesperadamente receber uma resposta de 192.168.2.2
na interface errada.
Para resolver isso, adicionei uma entrada de cache ARP estática para evitar que o Windows tente resolver 192.168.2.2
em todas as interfaces possíveis. Eu usei:
netsh interface ipv4 add neighbors "My adapter" 192.168.2.2 aa-bb-cc-dd-ee-ff