Адладка злучэнняў 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 дадайце правераны TLS прызначэння пасля SOCKS перад адпраўкай запыту гэтага пратаколу. Стаўцеся да вываду адладкі як да канфідэнцыйнага, калі задзейнічаны ўліковыя даныя.