Conocer Origen de la Visita

Quisiera sabe como es posible conocer el origen de una visita, por ejemplo el pais, el dominio desde donde accede, etc, es para realizar estadisticas de un sitio al estilo de nedstatbasic.net... Espero puedan ayudarme. Muchas Gracias

1 Respuesta

Respuesta
1
Hi,
Mira, todas las soluciones estan hechas en base a extraer el nombre de host con la IP y luego chequear el .ar .uk .ar .es, etc.
Esto no me parecio muy conveniente asi que yo segui buscando e investigando.
¿Aca te mando un script hecho en PHP por Steve Yelvington que es una funcion WHOIS? Donde le podes setear el servidor de WHOIS que quieras.
El codigo es el siguiente:
*************************
<?PHP
function getnumericaddress($domain)
{
echo "Network number information from ARIN";
echo "
";
$fp = fsockopen("whois.arin.net", 43, &$errno, &$errstr, 10);
if(!$fp)
{
echo "Could not open connection to $server on port 43.\n";
echo "$errstr ($errno)<br>\n";
}
else
{
fputs($fp,"$domain\r\n");
while(!feof($fp))
{
echo fgets($fp,128);
}
fclose($fp);
}
echo "
";
}
if ($domain)
{
// if no alpha chars, assume it is a numeric address
// and try to get results from whois.arin.net
if ( ereg( "([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})" , $domain, $regs))
{
getnumericaddress($domain);
}
else {
// first get the domain server from internic
$fp = fsockopen("rs.internic.net", 43, &$errno, &$errstr, 10);
if(!$fp)
{
echo "$errstr ($errno)<br>\n";
}
else
{
fputs($fp,"$domain\r\n");
while(!feof($fp))
{
$buf = fgets($fp,128);
if (ereg("Whois Server:", $buf))
{
$server = str_replace("Whois Server: ", "", $buf);
$server = trim($server);
}
}
fclose($fp);
}
if ($server)
{
echo "$domain is registered at $server:<BR>";
echo "
";
$fp = fsockopen($server, 43, &$errno, &$errstr, 10);
if(!$fp)
{
echo "Could not open connection to $server on port 43.\n";
echo "$errstr ($errno)<br>\n";
}
else
{
fputs($fp,"$domain\r\n");
while(!feof($fp))
{
echo fgets($fp,128);
}
fclose($fp);
}
}
else {
echo("$domain does not appear to be registered.<BR>");
}
echo ("
<BR>");
}
}
?>
<FORM ACTION="<?PHP echo($PHP_SELF); ?>" METHOD="post">
This will find .com, .org, and .net domains and most IP (netblock) assignments<br>
domain: <INPUT TYPE="text" NAME="domain" SIZE="40" MAXLENGTH="100">
<INPUT TYPE=submit VALUE="Find out"><INPUT TYPE=reset VALUE="Reset">
</FORM>
************************
Nahuelon..
He probado con varias IP el codigo, y me devuelve por ejemplo
"Network number information from ARIN gofast.net, Inc. (NETBLK-NETBLK-GOFAST8) 235 E. 6th St. 5th Floor St. Paul, MN 55101 US Netname: NETBLK-GOFAST8 Netblock: 209.46.0.0 - 209.46.127.255 Maintainer: OCNR Coordinator: Hostmaster Account (HA2-ORG-ARIN) [email protected] 612.291.2466 Fax- 612.291.8977 Domain System inverse mapping provided by: NS.GOFAST.NET 209.46.63.1 NS2.GOFAST.NET 209.46.63.6 * Rwhois information regarding reassignments from this block * is available from rwhois.gofast.net 4321 ADDRESSES WITHIN THIS BLOCK ARE NON-PORTABLE Record last updated on 02-Mar-1999. Database last updated on 19-Mar-2002 19:58:23 EDT. The ARIN Registration Services Host contains ONLY Internet Network Information: Networks, ASN's, and related POC's. Please use the whois server at rs.internic.net for DOMAIN related Information and whois.nic.mil for NIPRNET Information. "
¿es para cualquier IP?
Explicame lo de la primera parte,
"Mira, todas las soluciones estan hechas en base a extraer el nombre de host con la IP y luego chequear el .ar .uk .ar .es, etc."
eso me interesa.
Gracias
Hi de nuevo,
Mira, disculpa que no te explique profundamente. A lo que me referia es que lo que se suele hacer es lo siguiente:
- Con $REMOTE_ADDR podes obtener la direccion IP del navegante que esta visitando tu pagina.
- Aplicando la funcion gethostbyaddr($REMOTE_ADDR) podes obtener el nombre de dominio.
- Teniendo el nombre de dominio podes capturar las ultimas 3 letra (. Ar .uy .uk .es .au, etc) y saber de donde estan accediendo a tu sitio.
Esta es la solucion que se utiliza pero no es la mas conveniente ya que tenes que saber que pais es cada sigla. Obviamente funciona muy bien y no es muy complicado de confeccionar.
Nahuelon..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas