Os endereços IP (Internet Protocol) se enquadram em uma das quatro categorias básicas.
- Endereços usados para se comunicar com outros computadores ao redor do mundo,
- Endereços usados para se comunicar com computadores dentro de uma empresa ou rede específica,
- Endereços usados para transmitir informações entre computadores em uma rede,
- Endereços usados para permitir que um computador fale consigo mesmo.
Por contrato, 127.0.0.1 é um daqueles endereços que se enquadram na última dessas categorias.
Como seres humanos, não costumamos lembrar muito bem os números de IP, mas não temos problemas em lembrar nomes como superuser.com, www.google.com e outros nomes semelhantes. Quando a internet era pequena (muito pequena), os seres humanos compartilhavam um arquivo "hosts" com outras pessoas na internet, para que não precisassem se lembrar de números. Esse arquivo de hosts continha pares de um endereço IP e um ou mais nomes de host. Quando alguém tentava acessar um host pelo nome, o software do computador sabia o suficiente para procurar no arquivo de hosts. A Internet cresceu tanto desde então que agora usamos um sistema de nomes de domínio (DNS) para resolver nomes de números IP, além de usar o arquivo de hosts de estilo antigo. A maioria dos computadores é configurada para procurar nomes no arquivo hosts primeiro e depois no DNS, se isso falhar.
Agora que você tem o plano de fundo, veja como funciona (geralmente):
Quando você adiciona essa entrada ao arquivo hosts, sempre que o computador tentar acessar o site www.foo.com, ele tentará acessar esse site no endereço IP 127.0.0.1 porque você disse que esse é o endereço da Internet para www. foo.com. Lembre-se de que o 127.0.0.1 permitirá que um computador se comunique sozinho, ao tentar acessar o 127.0.0.1 no seu navegador, tentará entrar em contato com um servidor da web no seu computador. Se você tivesse inserido o 2.3.4.5 em vez do 127.0.0.1, ele tentaria entrar em contato com o computador no endereço 2.3.4.5 ao abrir www.foo.com.
127.0.0.1 localhost
127.0.0.1 www.foo.com
127.0.0.1 foo.com
O lado ruim de usar o arquivo hosts para coisas assim é que, depois de adicionar uma entrada ao arquivo hosts, você assume a responsabilidade de manter essas informações atualizadas. Se você não inserir a entrada no arquivo hosts, seu computador tentará usar o DNS para procurar o endereço IP e, em seguida, use esse endereço IP para entrar em contato com o servidor.
O bom disso é que se você nunca quiser permitir que alguém fale com www.foo.com apenas pelo nome do host no seu computador, adicionar a entrada ao arquivo do seu host pode (palavra-chave - pode) impedir que isso aconteça. Se o objetivo é impedir a chegada a um site específico por qualquer meio (não apenas pelo nome do host), existem outras maneiras melhores e mais confiáveis de impedir que isso aconteça como o uso adequado de um firewall.