คำตอบสั้น
จะตรวจสอบได้อย่างไรว่า IP พร็อกซีอยู่ในเมืองใด?
ส่งคำขอผ่านพร็อกซีไปยังบริการค้นหา IP สองรายการแล้วเปรียบเทียบเมือง จากนั้นโหลดเว็บไซต์เป้าหมายและอ่านตำแหน่งที่แสดง ฐานข้อมูลมักขัดแย้งกันใกล้เขตเมือง เช่น บ้านในนาวีมุมไบอาจแสดงเป็นธาน ซึ่งด้วย Banyan Proxies ส่วน -city- กำหนดเมือง เริ่มต้นที่ US$1.88 สำหรับ 1 GB
จะตรวจสอบเมืองของพร็อกซีในสี่ขั้นตอนได้อย่างไร?
ใช้เซสชันแบบคงที่
เพิ่ม
-session-chk1-ttl-10เพื่อให้ทุกการค้นหาเห็น IP เดียวกัน:USERNAME-country-ph-city-cebu_city-session-chk1-ttl-10ถามบริการค้นหาไอพีสองเจ้า
ส่งคำขอไปยัง endpoint ค้นหาข้อมูลสาธารณะสองจุดผ่านพร็อกซี แล้วบันทึกเมือง ภูมิภาค และ ASN จากแต่ละเจ้า
ถามเป้าหมาย
เปิดคำใบ้ตำแหน่งของเป้าหมายเองผ่านพร็อกซี เช่น พื้นที่จัดส่งของมาร์เก็ตเพลส ช่องกรอกที่อยู่ในแอปสั่งอาหาร หรือบรรทัดตำแหน่งของเสิร์ชเอนจิน
ตัดสินใจ
ถ้าเป้าหมายยืนยันตรงกัน ก็ขยาย規模ได้ ถ้าไม่ตรง ให้ลองเซสชันใหม่ เมืองใกล้เคียง หรือยอมรับภูมิภาคนั้นหากงานของคุณอนุญาต
ทำไมฐานข้อมูล geolocation ถึงไม่ตรงกัน?
IP geolocation เป็นการประมาณ ฐานข้อมูลจับคู่บล็อกที่อยู่กับสถานที่โดยใช้การลงทะเบียนของ ISP ข้อมูล routing และรายงานจากผู้ใช้ ISP ภายในบ้านอาจลงทะเบียนบล็อกไว้ที่ศูนย์ภูมิภาค ทำให้บ้านทั่วทั้งเขตมหานครใช้ป้ายกำกับเดียวกัน พื้นที่มหานครในภูมิภาคของเรามักข้ามเส้นแบ่งเขตปกครอง: ชานเมือง Delhi อยู่ใน Haryana และ Uttar Pradesh, Kuala Lumpur อยู่ใน Selangor, Manila กระจายอยู่ทั่ว 16 เมืองของ Metro Manila แต่ละหน้าของเมืองจะแสดงรายชื่อสถานที่ใกล้เคียงที่คุณอาจพบ
ฉันจะเขียนสคริปต์ตรวจสอบได้อย่างไร?
สคริปต์ Python นี้ขอ IP แบบคงที่หนึ่งตัวและถามบริการสองเจ้าเพื่อหาตำแหน่งของมัน เปลี่ยนส่วนของเมืองเพื่อทดสอบเมืองอื่น
import requests
HOST = "gw.banyanproxies.com"
PORT = 7777
user = "USERNAME-country-ph-city-cebu_city-session-chk1-ttl-10"
proxy = f"http://{user}:PASSWORD@{HOST}:{PORT}"
proxies = {"http": proxy, "https": proxy}
a = requests.get("https://ipinfo.io/json", proxies=proxies, timeout=30).json()
b = requests.get("https://ipapi.co/json/", proxies=proxies, timeout=30).json()
print("ipinfo:", a.get("ip"), a.get("city"), a.get("region"), a.get("org"))
print("ipapi: ", b.get("ip"), b.get("city"), b.get("region"), b.get("org"))
if a.get("ip") != b.get("ip"):
print("The IP changed between requests: the session ended early.")การไม่ตรงกันของเมืองใดพบบ่อยในเอเชีย?
| คุณขอ | คุณอาจพบ | เหตุผล |
|---|---|---|
| เดลี | Gurugram, Noida, Ghaziabad | Delhi NCR ครอบคลุมสามรัฐและใช้เครือข่ายร่วมกัน |
| มุมไบ | Thane, Navi Mumbai | เป็นเขตมหานครเดียว ป้ายกำกับตามศูนย์ของ ISP |
| มะนิลา | Quezon City, Makati, Pasig | Metro Manila มี 16 เมือง ฐานข้อมูลเลือกเพียงเมืองเดียว |
| Kuala Lumpur | Petaling Jaya, Subang Jaya | บ้านใน Klang Valley มักถูกลงทะเบียนไว้ที่ KL |
| จาการ์ตา | Tangerang, Bekasi, Depok | Greater Jakarta (Jabodetabek) ใช้เครือข่ายร่วมกัน |
| Islamabad | Rawalpindi | เป็นเมืองแฝดที่อยู่ติดกัน |
| ซิดนีย์ | Parramatta, Penrith | ชานเมือง Greater Sydney มีชื่อของตัวเอง |
ฉันควรทำอย่างไรเมื่อยืนยันเมืองได้แล้ว?
ขยาย規模ด้วยพารามิเตอร์จาก ดัชนีเมือง และ ไวยากรณ์การกำหนดเมืองเป้าหมาย สำหรับการตรวจสอบหลายขั้นตอน ให้ใช้ IP เดียวด้วย เซสชันแบบคงที่; ดูแพ็กเกจได้ที่ หน้าลาคา
ผู้ซื้อถามอะไรอีกเกี่ยวกับการตรวจสอบเมือง?
ควรใช้บริการค้นหาไอพีเจ้าไหน?
เจ้าที่เป้าหมายของคุณใช้ ซึ่งโดยปกติคุณไม่สามารถรู้ได้ นั่นคือเหตุผลว่าการทดสอบที่ดีที่สุดคือคำใบ้ตำแหน่งของเป้าหมายเอง เช่น พื้นที่จัดส่งหรือบรรทัดผลลัพธ์ท้องถิ่น
เขตเวลาและภาษาจะทำให้ฉันถูกจับได้ไหม?
เว็บไซต์สามารถอ่านเขตเวลาและภาษาของเบราว์เซอร์ได้ ตั้งให้ตรงกับเมือง เช่น Asia/Manila และภาษาอังกฤษหรือฟิลิปปินส์สำหรับ Cebu City เพื่อให้ผลลัพธ์สอดคล้องกัน
ป้ายกำกับที่แตกต่างหมายความว่า IP ไม่ได้อยู่ในเมืองนั้นหรือไม่
ไม่ใช่ มันหมายความว่าฐานข้อมูลหนึ่งติดป้ายกำกับต่างออกไป บ้านใน Petaling Jaya และบ้านใน Kuala Lumpur ต่างก็ให้ผลลัพธ์สำหรับ Kuala Lumpur ได้ ตัดสินใจจากมุมมองของเป้าหมาย ไม่ใช่จากการค้นหา
ข้อมูลเหล่านี้มาจากไหน? (3)
- นักพัฒนา ipinfo.io — IPinfo
- เอกสาร API ของ ipapi.co — ipapi
- เมโทรมะนิลา (16 เมืองและ 1 เทศบาล) — Wikipedia