Existem dois tipos de "vhosts": real e falso.
Vhosts reais são geralmente chamados "reverse DNS" (também chamado de rDNS) - é basicamente um registro DNS para o seu endereço IP, apontando para algum nome de domínio com um registro PTR
pelo servidor na conexão (seja ircd
, httpd
ou qualquer outra coisa). Este é o aviso "Procurando seu nome de host ..." que você vê imediatamente após conectar-se ao IRC.
Se um usuário se conectar a partir de 2001:db8::42
, por exemplo, uma pesquisa de DNS será executada para 2.4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa.
. Se o usuário conectado de 192.0.2.123
, o nome DNS equivalente será 123.2.0.192.in-addr.arpa.
. O DNS reverso pode ser alterado por quem controla o bloco de endereços IP. Se você tem um único endereço IPv4 para sua rede doméstica, você geralmente tem que irritar seu ISP para obter o rDNS alterado.
Para evitar falsificação, um ircd
(o programa do servidor IRC) comparará o DNS reverso e avançado - ou seja, o nome do host rDNS apontará para o seu endereço IP - antes de exibi-lo para outros usuários.
Para aqueles que não conseguem mudar seu rDNS real, a maioria das redes de IRC oferece "hosts virtuais" ou "capas".
Quase todo daemon do IRC tem a capacidade de alterar o nome do host exibido pelo usuário a qualquer momento; geralmente isso é restrito aos operadores, ou mesmo aos serviços. Por exemplo, com o comando de IRC /chghost joeuser joes-fake-hostname.net
(assumindo privilégios suficientes).
Na maioria das redes, esse processo é automatizado pelos serviços - assim que um operador lhe atribui um vhost (cloak), você o define toda vez que se identifica com sua conta de serviços.
(Eu estou dizendo "serviços", não "NickServ" ou "HostServ", porque na maioria das vezes é um único programa apresentando-se como todos os * Servs.)