مقایسه 2 آی پی !

sodahost

Member
سلام دوستان
من می خوام یه اسکریپت بنویسم حالت گارد باشه
یعنی اگه یه آی پی رو در اون اضافه کردی تمام آی پی های اون رنج رو بلوک کنه !
مثلا اگه آی پی 192.168.0.85 رو بلوک کردم آی پی 192.168.0.1 تا 192.168.0.254 رو بلوک کنه !!
من با if درست کردم
ولی اگه آی پی 192.168.0.85 رو فیلتر می کردم فقط تا آی پی 192.168.0.99 رو فیلتر می کرد و 192.168.0.100 می تونست سایت رو ببینه !
میشه کمک کنید ؟
 

sunrise

Member
اميدوارم اين بتونه کمکتون کنه:
PHP:
<?php
$blockedip = preg_replace('#([0-9]+).([0-9]+).([0-9]+).([0-9]+)#', '$1.$2.$3', '192.168.0.85');

$ip = $_SERVER['REMOTE_ADDR'];

if (preg_match("#$blockedip.([0-9]+)#", $ip))
{
	echo 'Access Denied!';
}
?>
 

Y.P.Y

Well-Known Member
سلام،
sunrise جان اگر قالب IP فرق کنه چی؟ IPV4 IPV6... یا 255.255.255.255 یا 0.0.0.0...
 

sunrise

Member
سلام،
sunrise جان اگر قالب IP فرق کنه چی؟ IPV4 IPV6... یا 255.255.255.255 یا 0.0.0.0...
خب در اين حالت مي بايست بررسي رو به يک شيوه ديگه انجام داد، يعني بر مبناي IPv6 مقايسه صورت مي گيره.

اما در مثالي که من نوشتم بر مبناي سه عدد اول آيپي که بصورت IPv4 هست مقايسه رو صورت ميده، و اگه بجاي 192.168.0.85 مثلا 192.168.145.32 رو قرار بديد در اون صورت رنج 192.168.145.0/24 مورد بررسي قرار خواهد گرفت.
 

sodahost

Member
آقا مرسی حال کردم ،
راستی بزار یه چیزی من اول یه چیزه دیگه تو سرم بود ولی امروز خواستم این کارو بکنم
ببین تصمیم گرفتم یه چیزی درست کنم
که من خودم شخصا
این مشخصات رو وارد دیتا بیس کنم بعد بینندها مشاهده کنند !
یه چیزی مثل سایت Ip2location اینجوری که
به بیننده نشون بده
کاربر گرامي شما از کشور ایران و شهر اسم شهر و با خطوط اينترنت شرکت نام آی اس پی از نوع اینترنت پر سرعت ADSL از سايت ديدن مي فرماييد.
میشه برای انجام این کمک کنید !
اگه هم انجام بدید و هزینه رو هم بگید هزینه رو هم پرداخت می کنم
 

sunrise

Member
آقا مرسی حال کردم ،
راستی بزار یه چیزی من اول یه چیزه دیگه تو سرم بود ولی امروز خواستم این کارو بکنم
ببین تصمیم گرفتم یه چیزی درست کنم
که من خودم شخصا
این مشخصات رو وارد دیتا بیس کنم بعد بینندها مشاهده کنند !
یه چیزی مثل سایت ip2location اینجوری که
به بیننده نشون بده
کاربر گرامي شما از کشور ایران و شهر اسم شهر و با خطوط اينترنت شرکت نام آی اس پی از نوع اینترنت پر سرعت adsl از سايت ديدن مي فرماييد.
میشه برای انجام این کمک کنید !
اگه هم انجام بدید و هزینه رو هم بگید هزینه رو هم پرداخت می کنم
البته انجام چنين کاري اونم از اول خيلي سخت و زمان بر هست، البته ديتابيس هاي آماده اي که شما اکثر ip هاي دنيا هست وجود داره که شامل مشخصات کامل هر يک از اونا هست، خودم قبلا از يکي از همين ها استفاده مي کردم اما متأسفانه هرچي فکر مي کنم اسمش رو به خاطر نميارم اما اگه در گوگل سرچ کنيد در اين مورد اطلاعات خوبي به شما داده ميشه.
 

sodahost

Member
ببینید من کار خواستی نمی خوام انجام بدم ! که نیاز به آی پی ها باشه !
من فقط می خوام در حد اینکه به جواب سوال برسم و یه اسکریپ کوچیک بنویسم تو این زمینه ، نا در حد حرفه ای !!
-------------
من خودم امروز یه چیز مسخره درست کردم :) !
اینجوری
در دیتا بیس 3 تا فیلد درست کردم
عدد اول آی پی مثال 127.0.0.1 عدد آخر آی پی 127.0.0.1.255 , نام ارائه دهنده این آی پی مثال لوکال هاست
----------
بعد تو پی اچ پی اومدم آی پی بیننده رو گرفتم و یه Query درست کردم
$from=$row[1];
$end=$row[2];
if ( $ip >= $from and $ip <= $end )
ولی اینجا باز به مشکل اول بر خوردم
برنامه شمارو هم استفاده کردم ولی نمی دونم چرا تو Query نتیجه نداد
یه لطفی می کنید
کد برنامه رو برای من بنویسید
----------
 

parsiteam

Member
من بانک MYSQL کامل Ip2Location رو دارم عزیزم . 700 مگه . همون یک میلیون دلاریشه .یعنی کاملترین . دوست داشتی بگو تا برات نصب کنمش عزیزم . پیام خصوصی هم میتونی بدی . در خدمتم .
 

جدیدترین ارسال ها

بالا