Code: use LWP::UserAgent; $ua = LWP::UserAgent->new; $ua->proxy(['http', 'ftp'] => 'http://proxy.myorg.com'); $req = HTTP::Request->new('GET',"http://www.perl.com";); $req->proxy_authorization_basic("proxy_user", "proxy_password"); $res = $ua->request($req); print $res->content if $res->is_success;
попробуй так: Code: #!/usr/local/bin/perl use IO::Socket; my $socks = new IO::Socket::Socks( ProxyAddr=>"127.0.0.1", ProxyPort=>"8080", ConnectAddr=>"127.0.0.1", ConnectPort=>"80", AuthType => "userpass", Username => "Vasya", Password => "qwert" ) || die ":-(\n"; $socks->autoflush(1); print $socks "GET / HTTP/1.1\n\n"; while (my $buff = <$socks>) print $buff; close $socks; или нужны чистые сокеты без всяких библиотек?
Скиньте пожалуйста header, отправляемый proxy серверу, на котором проходить авторизация, если кому не сложно.
AnGeI, если теоретически, то: отправляешь "\x05\x02\x00\x02" получаешь "\x05\x02" отправляешь "\x05\x05Vasya\x06qwerty" получаешь "\x05\x00" отправляешь "\x05\x01\x00\x7F\x00\x00\x01\x05\x00" получаешь "\x05\x00\x00\x7F\x00\x00\x01\x05\x00" отправляешь все, что хочешь
Это, по всей видимости, socks5. Для прокси это обычный HTTP-запрос с дополнительным заголовком Proxy-Authorization.