Sua hipótese inicial é que todos os sites podem ser acessados diretamente por meio do endereço IP. Este não é o caso.
Em muitos casos (eu arriscaria a maioria dos casos), o site apresentado em um endereço IP depende do nome do site que você está solicitando. Ou seja, se você solicitar o superuser.com, primeiro resolverá isso para um endereço IP e, em seguida, fará uma solicitação ao endereço IP de uma página da Web específica. Parece assim:
GET / HTTP/1.1
Host: superuser.com:80
A primeira parte diz "pegue a primeira página do site" e a segunda diz "para o site superuser.com"
É por isso que um único servidor da Web pode hospedar vários sites usando um único endereço IP. No caso dos sites do Stack Exchange, qualquer um deles ou todos eles podem estar em cada um de seus servidores, e você receberá o que você pediu. Se você acabou de colocar um endereço IP, você não terá nenhum deles, porque você não está dizendo ao servidor qual dos sites que você está procurando. Nesses casos, ele pode ter um website "padrão" definido ou apenas retornar um erro.
Se você estiver tentando contornar um problema com seu provedor de DNS, uma opção é modificar seu arquivo hosts
para que você mesmo resolva os endereços, em vez de permitir que uma parte externa faça isso por você.
Por exemplo, se você editar
/etc/hosts (linux)
c:\windows\system32\drivers\etc\hosts (windows)
Você pode inserir
74.125.236.195 superuser.com
Dessa forma, se você digitar superuser.com em seu navegador, ele procurará no arquivo de hosts e resolverá o endereço IP, mas ainda passará o nome do site para o servidor ao qual se conecta.