O sistema não resolve http://www.google.com
porque sabe que não é um nome de host válido . É um URL e tem um nome de host em , mas não é um nome de host em si. O sistema operacional sabe disso porque nem :
nem /
são permitidos em nomes de host (é por isso que URLs os usam como separadores!).
No seu segundo exemplo, o nome não possui pontos, então muitos sistemas consideram um nome local e tentam outros métodos (não-DNS) de resolvê-lo primeiro. Embora isso não seja uma regra estrita - alguns outros sistemas do tentam resolver nomes de componentes únicos via DNS também (embora frequentemente eles adicionem o "domínio local" no final).