IP خروجی را در مقصد اندازه بگیرید. آدرس فهرست پروکسی، شنونده‌ای است که کلاینت به آن وصل می‌شود؛ NAT، مسیریابی یا یک گام خروجی دیگر می‌تواند آدرس مبدأ متفاوتی به مقصد نشان دهد.

یک نقطهٔ بررسی IP را با پروکسی و بدون آن مقایسه کنید. نمونهٔ عمومی سریع:

curl --noproxy '*' --connect-timeout 5 --max-time 15 https://httpbin.org/ip
curl --proxy http://203.0.113.10:8080 --noproxy '' --connect-timeout 5 --max-time 15 https://httpbin.org/ip

آدرس مستنداتی را با نقطهٔ واقعی جایگزین کنید. برای موردی از فهرست پروکسی‌های HTTP، آدرس شنونده و خروجی مشاهده‌شده را جدا نگه دارید. درخواست اول در صورت مجاز بودن دسترسی مستقیم، پروکسی را دور می‌زند؛ دومی قواعد دورزدن را پاک و پروکسی را انتخاب می‌کند. بررسی‌کننده هر دو را می‌گیرد؛ دادهٔ خصوصی، کوکی و توکن نفرستید.

آدرس گزارش‌شده را ببینید، نه فقط HTTP 200. آدرس متفاوت مطابق انتظار از مسیر این درخواست پشتیبانی می‌کند. اگر نتایج یکسان است، پیش از نادرست دانستن مورد فهرست، استثناها و تنظیمات را بررسی کنید.

ببینید بررسی‌کنندهٔ IP چه چیزی اندازه می‌گیرد

نتیجهٔ origin در httpbin ممکن است از X-Forwarded-For موجود استفاده کند. ممکن است زنجیره‌ای باشد، نه آدرس خام همتای سوکت؛ به‌ویژه در آزمون انتقال HTTP بدون رمزگذاری. وقتی دقت مهم است، بررسی‌کنندهٔ تحت کنترل خود بهتر است: همتای واقعی را در مرز شبکهٔ مشخص ثبت کنید و به سربرگ‌های انتقال فقط وقتی اعتماد کنید که زیرساختتان آن‌ها را فراهم و اعتبارسنجی کند.

آدرسی که curl از قبل می‌داند

curl --proxy http://203.0.113.10:8080 --noproxy '' --output /dev/null --write-out 'peer=%{remote_ip}\n' https://example.com/

remote_ip همتای اتصال curl را نشان می‌دهد، معمولاً نقطهٔ پروکسی HTTP در این نمونه. کمک می‌کند بدانید curl کجا وصل شده، اما آدرس مبدأ خروجی پروکسی را مشاهده نمی‌کند. نتیجهٔ مقصد به پرسش دوم پاسخ می‌دهد.

بررسی را در برنامه‌ای که پروکسی را استفاده خواهد کرد تکرار کنید. موفقیت curl مرورگر را تنظیم نمی‌کند؛ نمایه‌ها، افزونه‌ها، استثناها و برنامه‌های نادیده‌گیرندهٔ تنظیمات سیستم ممکن است مسیرهای دیگری برگزینند. اگر مکان مهم است، آدرس خروجی مشاهده‌شده را جست‌وجو کنید و نقطهٔ اتصال و خروجی را همراه نتیجه ذخیره کنید.

مقالات مرتبط