Isso porque o Windows e o Linux implementam o traceroute de maneira diferente.
No Windows, ele usa pacotes de eco ICMP com configurações variadas de tempo de vida para descobrir saltos intermediários.
No Linux, ele usa pacotes UDP com configurações variadas de tempo de vida para descobrir saltos intermediários.
Algumas redes permitem um ou ambos, ou nenhum. As redes que permitem ICMP, mas não o UDP, se comportarão de maneira diferente. O ping no linux usa os mesmos pacotes de eco ICMP que o Windows usa, o que explica por que isso funciona, mas não o Traceroute.
Além disso, diferentes programas traceroute se comportam de maneira diferente. Nem todos os linuxes usam o UDP para isso. Então isso não é universal.