O Host
corresponde ao nome que você usa quando se conecta, não ao ip após a resolução do dns.
Tente usar Host *corp.internal
.
Por nossa discussão nos comentários, se você quiser usar os nomes simbólicos, ainda que sejam necessários para resolvê-los aos IPs do host de bastiões, então você poderia usar um subexpressionista no ProxyCommand assim.
ProxyCommand ssh bastion -W $(getent hosts $h | cut -d " " -f1):%p