Em que linguagem?
Se for PHP (li agora a tua resposta, depois de fazer o post), tens o $_SERVER["REMOTE_ADDR"] para o IP; tens o gethostbyaddr() para saberes o hostname dado o IP, e quanto à zona, precisas de um geolocator (os grátis não costumam ser grande coisa, e os bons são pagos).
Quanto a mais informações, olha, cria um script novo e escreve só isto:
Não, isso dá alguns dados sobre o cliente. O código que dei serve só para veres que dados podes obter, e depois guardas tu os dados que quiseres numa BD para registo futuro.
Não é tão simples como ir buscar uma variável e ter tudo