راهنمایی درمورد بانک اطلاعاتی IP کشورهای مختلف

parsley

تازه وارد
با سلام

من فایل بانک اطلاعاتی آی پی کشورها رو از آدرس زیر دانلود کردم:



از اونجا که مبتدی هستم محتویات فایل برام مبهم بود. مگر نه اینکه آدرس آی پی بطور استاندارد یک عدد 12 رقمیه؟ ولی در این فایل چنین نبود.

اگر ممکنه لطفا راهنمایی کنید که فرمت آدرس های آی پی به چه صورته؟ و چطور تفسیر می شه؟

با تشکر

 

Qalekhani

قلعه‌خانی
با استفاده از نمونه کدهای زیر میتونید فرمت دسیمال رو به فرمت مدنظر تبدیل کنید.

در محیط ASP

Function LONG2IP(ByVal asNewIP)
Dim lnResults
Dim lnIndex
Dim lnIpAry
lnIpAry = Split(asNewIP, ".", 4)
For lnIndex = 0 To 3
If Not lnIndex = 3 Then
lnIpAry(lnIndex) = lnIpAry(lnIndex) * (256 ^ (3 - lnIndex))
End If
lnResults = lnResults + lnIpAry(lnIndex)
Next
CLngIP = lnResults
End Function


در محیط PHP

function LONG2IP($a){
$b=array(0,0,0,0);
$c = 16777216.0;
$a += 0.0;
for ($i = 0; $i < 4; $i++) {
$k = (int) ($a / $c);
$a -= $c * $k;
$b[$i]= $k;
$c /=256.0;
};
$d=join('.', $b);
return($d);
}


در محیط Perl

کد:
sub dec2dot {
	my $address = @_[0];
	$d = $address % 256; $address -= $d; $address /= 256;
	$c = $address % 256; $address -= $c; $address /= 256;
	$b = $address % 256; $address -= $b; $address /= 256;
	$a = $address;
	$dotted="$a.$b.$c.$d";
	return $dotted;
}
 
بالا