Parece que seu aplicativo ou algum componente do seu servidor está realmente redirecionando para o endereço IP.
No chrome ou no firefox, abra o painel de debug / developer (ctrl + shift + k para firefox, ctrl + shift + j para chrome). Clique na guia "rede". Faça uma solicitação para o endereço desejado (sub2.mydomain.com). O que eu estou teorizando você verá é um pedido para sub2.mydomain.com com um status de '302' ou mesmo '301'. A próxima linha provavelmente será yy.yy.yy.yy com um status de '200'
Não há realmente uma maneira de fazer com que um registro DNS A se comporte da maneira que você descreveu em um navegador da Web normal, por isso parece que o DNS está definido corretamente. Este é um CMS comum como wordpress, joomla, drupal, etc? Eu acho que muitos deles precisam ter o domínio (ou subdomínio) definido no aplicativo em algum lugar também.