Skrypt dla puli z polskich adresów ip

Skrypt dla puli z polskich adresów ip
D4
  • Rejestracja:około 11 lat
  • Ostatnio:ponad 8 lat
  • Postów:122
0

Witam,

Potrzebuję napisać skrypt który uruchamia się jedynie dla adresów ip należących do PL. Jak coś takiego ogarnąc?

Pzd,
Darek

Tumeg
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 8 lat
  • Postów:687
1

http://www.hostip.info/use.html i w php

Kopiuj
$_SERVER['REMOTE_ADDR'];

do pobrania adresu ip usera.

edytowany 2x, ostatnio: Tumeg
RE
Moderator
  • Rejestracja:około 18 lat
  • Ostatnio:około rok
2

Zastanawiam się czy baza RIPE nie byłaby tutaj wystarczająco wiarygodna. Mam w sumie wrażenie, że wszystkie te usługi i sprawdzarki z niej bezpośrednio albo pośrednio korzystają. Anyway, napisałem program, który z bazy RIPE wyciąga wszystkie polskie subnety, połączyłem je i wyeksportowałem: inets.php.zip. Sposób użycia:

Kopiuj
$inets = include('inets.php');

$isIpPolish = function($ip) use (&$inets) {
	foreach($inets as $start => $end) {
		if ($ip >= $start && $ip < $end) {
			return true;
		}
	}

	return false;
};

echo $isIpPolish(ip2long('1.2.3.4'));

Zadanie dla czytelnika to poprawienie powyższego skryptu, bo będzie chyba średnio działać na 32-bitowym PHP i wypadałoby to zrobić jakimś wyszukiwaniem binarnym. A ja może później udostępnię program, którym wygenerowałem dane.

edytowany 1x, ostatnio: Rev
dzek69
RIPE zarządza tylko częścią przestrzenii IP, więc nie wszystko tam znajdziesz. Takich organizacji jest z 6 bodaj.
RE
No tak, ale są podzielone geograficznie i RIPE zarządza tą europejską przestrzenią IP.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.