Gå til innhold

Finne ISP til besøkende?


Anbefalte innlegg

Skrevet (endret)

Jeg ønsker og kunne finne ISP'en til besøkende av flere grunner deriblandt vil jeg lage en nettside som kun fungerer for folk på en gitt ISP. Jeg ønsker ogs og kunne blokkere enkelte ISP'er på en annen side. Hvordan finner man brukerens ISP?

 

Edit: Rettet IPS til ISP i emnetittel.

Endret av pulse
Videoannonse
Annonse
Skrevet

Regner med at du mener Internet Service Provider. (topic sier IPS)

 

$remote_host = $_SERVER['REMOTE_HOST'] gir deg resultatet av en nslookup av klientens ip. (apache må være konfigurert for å støtte dette.)

 

$ip_split = explode( '.', $remote_host );

$ip_split = array_reverse($ip_split);

 

$ip_string = $ip_split[1] . '.' . $ip_split[0];

 

elns

Skrevet
Regner med at du mener Internet Service Provider. (topic sier IPS)

Ja, var det jeg mente :)

 

$remote_host = $_SERVER['REMOTE_HOST'] gir deg resultatet av en nslookup av klientens ip. (apache må være konfigurert for å støtte dette.)

Hvordan kan man konfigurere apache til og gjøre dette? Det nrmeste jeg har klart og finne er HostnameLookups (On/Off) men den funksjonen bytter jo bare ut ipadressen med domenenavn?

Skrevet
er det ikke det som er meningen da?

Nei, tenkte på sånn som skjer på IRC, at man kan se feks: NO-TELENORBUISNESS-SOLUTIONS elller: NO-TELENOR-DSL-3 eller lignende... For og vite ISP'en til brukeren. Sånn at jeg f.eks kan blokkere telenor brukere fra min nettside, eller lage en nettside for kun telenor brukere etc...

Skrevet
Ja, men det er jo nettopp det du få når du gjøre et reverse DNS oppslag da ;)

Stemmer det, men det er ikke ett reverse DNS oppslag jeg er på jakt etter.

 

Dersom jeg slår opp 85.19.154.33 med gethostbyaddr får jeg 85.19.154.33 som svar. Mens jeg egentlig er på jakt etter: NO-TDCSONG-KKTV

Gjest Slettet+142
Skrevet (endret)
Return Values

 

Returns the host name or the unmodified ip_address on failure.

 

Hvis det er linux og du har programmet host kan du bruke dette:

<?php

$ret = `host {$_SERVER["REMOTE_ADDR"]}`;
echo substr( array_pop(explode(" ", $ret)), 0, -1);

?>

 

Edit: Tok litt lengre tid å finne en alternativ løsning enn jeg hadde trodd da jeg postet quoten øverst i posten.. La til kode

 

Edit2: Ellers så var det jo faktisk talt flere koder i kommentarene her, og denne kommentaren har faktisk en temmelig lik kode til den jeg laget :)

Endret av Slettet+142
Skrevet (endret)
Ja, men det er jo nettopp det du få når du gjøre et reverse DNS oppslag da ;)

Stemmer det, men det er ikke ett reverse DNS oppslag jeg er på jakt etter.

 

Dersom jeg slår opp 85.19.154.33 med gethostbyaddr får jeg 85.19.154.33 som svar. Mens jeg egentlig er på jakt etter: NO-TDCSONG-KKTV

Det har jo litt med at det ikke finnes noen PTR-record på den IPen da, og det er jo litt essensielt at det eksisterer for at du skal få ut noen hostname.

 

Red.: Hvordan er det du får frem NO-TDCSONG-KKTV for den IPen da?

Endret av Ernie
Skrevet

Er vell mulighet å hente ut informasjon fra whois?

Ellers er det representert 3 forskjellige måter på: http://nils.wub.no/ip/

 

Får selv "3(NXDOMAIN)" på den siste der og ip adresse på den andre, men regner med det har noe med at jeg sitter på lokalt nettverk med serveren.

Skrevet

<?php

// scriptet gjør en raw whois lookup

$lookup = '';

$f = fsockopen( 'whois.norid.no', 43 );
fwrite( $f, $lookup . "\r\n" );
ob_start();
fpassthru( $f );
$output = ob_get_contents();
ob_end_clean();

print $output;

?>

 

norid har kun norske hoster så vidt jeg vet.

 

du må parse $output for å hente ønskelig info.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...