IO::Socket::Socks კავშირების გამართვა SocksDebug-ით
ჩართეთ IO::Socket::Socks-ის ხელის ჩამორთმევის დიაგნოსტიკა გამოსაკვლევი პროქსისა და დანიშნულებისთვის.
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 ამ პროტოკოლის მოთხოვნის გაგზავნამდე. როცა რწმუნებულები მონაწილეობენ, გამართვის გამოსავალს სენსიტიურად მოეპყარით.