کنکشن ناکام ہونے پر IO::Socket::Socks SOCKS کا تبادلہ پرنٹ کر سکتا ہے۔ پراکسی، منزل اور ڈیبگ آپشن واضح طور پر دیں:

use IO::Socket::Socks;

my $socket = IO::Socket::Socks->new(
    ProxyAddr   => 'proxy.example',
    ProxyPort   => 1080,
    ConnectAddr => 'www.example.com',
    ConnectPort => 80,
    SocksVersion => 5,
    SocksDebug  => 1,
    Timeout     => 10,
) or die $SOCKS_ERROR;

$socket->close();

ماڈیول SocksDebug کو SOCKS ٹریفک کو پروٹوکول پر مبنی شکل میں دکھانے والا قرار دیتا ہے۔ اسے یہ دیکھنے کے لیے استعمال کریں کہ گفت و شنید کتنی آگے بڑھی اور واپس آنے والے SOCKS ناکامی کوڈ کا معائنہ کریں۔

ProxyAddr اور ProxyPort درمیانی کے شناخت کرتے ہیں۔ SOCKS5 پراکسی فہرست سے بغیر تصدیق شدہ پتہ اجازت یافتہ عوامی HTTP ٹیسٹ کے لیے وہ فیلڈز بھر سکتا ہے۔ ConnectAddr اور ConnectPort اس سروس کی شناخت کرتے ہیں جس سے جڑنا ہے۔ سننے والے تک پہنچنے میں خرابی اور منفی SOCKS کنکشن جواب دو مختلف مشاہدے ہیں۔

SOCKS5 صارف نام/پاس ورڈ تصدیق درکار پراکسی کے لیے، دستاویزی کنسٹرکٹر فیلڈز میں AuthType => 'userpass', Username اور Password شامل ہیں۔

کامیاب بلاک کرنے والا کنسٹرکٹر SOCKS کنکشن قائم کرتا ہے، جبکہ واپس آنے والے ساکٹ کے ذریعے ایپلیکیشن درخواست بعد کا ایپلیکیشن نتیجہ فراہم کرتی ہے۔ HTTPS منزل کے لیے، اس پروٹوکول کی درخواست بھیجنے سے پہلے SOCKS کے بعد تصدیق شدہ منزل TLS شامل کریں۔ جب اسناد شامل ہوں تو ڈیبگ آؤٹ پٹ کو حساس سمجھیں۔

متعلقہ مضامین