API تشخیص کشور IP
آدرس IP کاربر را میگیرد و کشور آن را برمیگرداند، بههمراه اینکه ایرانی است یا نه. برای اینکه ورود با IP خارجی را به مرحلهٔ احراز هویت بفرستید.
این سرویس چه میکند
یک کیف پول دیجیتال را در نظر بگیرید که کاربرش همیشه از تهران وارد میشود، و امشب ورودی از یک IP خارجی دارد. شاید خودش است که VPN روشن کرده، شاید کسی رمزش را به دست آورده. تصمیم درست این نیست که ورود را رد کنید؛ این است که همین ورود را به یک مرحلهٔ سنجش بیشتر بفرستید، مثل کد پیامکی یا احراز هویت تصویری. این سرویس همان سؤال اول را جواب میدهد: این IP مال کجاست؟
ورودی یک فیلد به نام ip است، نسخهٔ ۴ یا ۶. خروجی در data شش کلید دارد: country_code (کد دوحرفی کشور)، country_name (نام فارسی)، is_iran، is_private، version و خود ip.
IP خارجی یعنی چه، و چه نیست
کشور یک IP یعنی کشوری که آن بازه در آن به کار میرود. کاربری که با VPN وصل است، IP کشور سرور VPN را دارد؛ پس IP خارجی در عمل بیشتر یعنی «VPN یا پروکسی»، نه «کاربر خارج از ایران». برای تصمیم در فرایند احراز هویت مشتری همین کافی است: آنچه میخواهید بدانید این است که این ورود با الگوی معمول کاربر میخواند یا نه.
IP درست را بفرستید
اگر سرور شما پشت پراکسی، توزیعکنندهٔ بار یا CDN است، نشانی اتصال IP خود آن واسطه است. IP کاربر را از هدری که واسطهٔ شما میگذارد بخوانید، معمولاً اولین مقدار X-Forwarded-For، و فقط وقتی به آن اعتماد کنید که واسطه مال خودتان است. پاسخی که is_private را درست برمیگرداند معمولاً یعنی همین مرحله اشتباه شده است.
کجا در جریان کار بنشیند
بهتر است در لحظهٔ ورود و پیش از تراکنشهای حساس فراخوانی شود، نه روی هر درخواست صفحه. نتیجهٔ هر IP را چند ساعت نگه دارید؛ کشور یک بازهٔ IP هر روز عوض نمیشود.
آنچه این سرویس نمیکند
شهر، نشانی یا اپراتور را برنمیگرداند و تشخیص قطعی VPN نمیدهد. برای بازهای که تازه به کشور دیگری رفته، ممکن است چند روز طول بکشد تا پاسخ درست شود.
کجا به کار میآید
- ورود با IP خارجی در کیف پول دیجیتالورودی که IP آن ایرانی نیست به مرحلهٔ کد پیامکی یا احراز هویت تصویری میرود و ورود عادی کاربران بدون مرحلهٔ اضافه میماند.
- تراکنش حساس در پلتفرم سرمایهگذاریپیش از برداشت وجه یا تغییر شماره شبا، کشور IP سنجیده میشود و اگر با سابقهٔ کاربر نخواند، تأیید دوباره خواسته میشود.
- گزارش سهم ورودهای خارجیتیم امنیت در داشبورد خودش میبیند چه سهمی از ورودها با IP خارجی است و آیا ناگهان بالا رفته است.
ورودی و خروجی
ورودی
ipstringآدرس IPنسخهٔ ۴ یا ۶، مثل 5.212.154.19 یا 2a01:5ec0::1؛ صفر پیشرو در IPv4 پذیرفته نمیشود.خروجی
country_codestringIRcountry_namestringایرانipstring5.212.154.19is_iranbooleanis_privatebooleanversionnumberقیمت و شرط پرداخت
قیمت هر فراخوان API تشخیص کشور IP ۶۰۰ تومان است. با افزایش مصرف ماهانه قیمت کم میشود: از فراخوان شمارهٔ ۵۰۰ در ماه به بعد، هر فراخوان ۴۰۰ تومان.
| تعداد استعلام در ماه | قیمت هر استعلام |
|---|---|
| ۱ تا ۴۹۹ | ۶۰۰ تومان |
| ۵۰۰ و بیشتر | ۴۰۰ تومان |
شمارش برای هر کسبوکار و همین سرویس، از ابتدای هر ماه شمسی دوباره شروع میشود و فقط فراخوانهایی که هزینه داشتهاند شمرده میشوند. قیمت هر فراخوان پیش از تماس با سرویس مرجع حساب میشود و همان مبلغی است که کسر میشود.
آخرین تغییر قیمت:
مبلغ پیش از تماس با سرویس مرجع از موجودی پنل قفل میشود و اگر پاسخی نیاید، آزاد میشود. ورودی نامعتبر، در دسترس نبودن سرویس مرجع و عبور از سقف نرخ هزینهای ندارند. «رکوردی یافت نشد» یک پاسخ معتبر است و هزینه دارد.
کمترین مبلغ شارژ پنل: ۵۰۰٬۰۰۰ تومان
پرسشهای متداول
آیا IP خارجی یعنی کاربر خارج از ایران است؟
نه لزوماً. بیشتر وقتها یعنی کاربر VPN یا پروکسی دارد. برای فرایند احراز هویت مشتری، آن را نشانهٔ سنجش بیشتر بدانید و کاربر را بهخاطرش رد نکنید.
خروجی دقیقاً چه کلیدهایی دارد؟
شش کلید در data: country_code، country_name، is_iran، is_private، version و ip. برای IP خصوصی یا بازهای که کشورش معلوم نیست، country_code و country_name خالی (null) برمیگردند.
IPv6 و IPv4 داخل IPv6 را میپذیرد؟
بله. نسخهٔ ۴، نسخهٔ ۶ و شکل ::ffff:a.b.c.d همه پذیرفته میشوند. صفر پیشرو در IPv4، مثل 010.1.1.1، پذیرفته نمیشود چون سامانههای مختلف آن را متفاوت میخوانند.
چرا برای IP کاربر پاسخ IP خصوصی میگیرم؟
چون احتمالاً IP پراکسی یا شبکهٔ داخلی خودتان را فرستادهاید. IP واقعی کاربر را از هدری که واسطهٔ مورد اعتمادتان میگذارد بخوانید.
شهر یا اپراتور کاربر را هم برمیگرداند؟
خیر. فقط کشور. موقعیت دقیقتر از روی IP بهاندازهٔ کافی قابل اتکا نیست که بر اساسش دربارهٔ کاربر تصمیم بگیرید.
هر چند وقت یک بار باید برای یک IP بپرسم؟
نتیجهٔ هر IP را چند ساعت نگه دارید. کشور یک بازهٔ IP بهندرت عوض میشود و فراخوان تکراری فقط هزینه است.
هر فراخوان چقدر از موجودی کم میکند؟
مبلغ از تعرفهٔ زندهٔ حساب شما میآید و در فیلد billing.amountRial هر پاسخ نوشته شده است. ورودی نامعتبر و سقف نرخ هزینه ندارند.
راهنماهای مرتبط
- خواندن IP واقعی کاربر پشت پراکسی، توزیعکنندهٔ بار و CDNپشت پراکسی، نشانی اتصال IP خود واسطه است. IP کاربر را از هدر واسطهٔ مورد اعتمادتان بخوانید و هدری را که کاربر میتواند جعل کند باور نکنید.
- ورود با IP خارجی در فینتک: کی کاربر را به احراز هویت بفرستیم؟IP خارجی بیشتر یعنی VPN، نه کاربر خارج از کشور. آن را نشانهٔ سنجش بیشتر بدانید، با سابقهٔ کاربر بسنجید و ورود را رد نکنید.
