IO::Socket::Socks boleh mencetak pertukaran SOCKS apabila sambungan gagal. Berikan proksi, destinasi dan pilihan nyahpepijat secara eksplisit:

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();

Modul mendokumenkan SocksDebug sebagai memaparkan trafik SOCKS dalam bentuk berorientasikan protokol. Gunakannya untuk melihat sejauh mana rundingan berjalan dan memeriksa kod kegagalan SOCKS yang dikembalikan.

ProxyAddr dan ProxyPort mengenal pasti perantara. Alamat tanpa pengesahan daripada senarai proksi SOCKS5 boleh mengisi medan tersebut untuk ujian HTTP awam yang dibenarkan. ConnectAddr dan ConnectPort mengenal pasti perkhidmatan yang perlu disambungkan. Ralat mencapai pendengar dan balasan sambungan SOCKS negatif ialah dua pemerhatian berbeza.

Untuk proksi yang memerlukan pengesahan nama pengguna/kata laluan SOCKS5, medan pembina yang didokumenkan termasuk AuthType => 'userpass', Username dan Password.

Pembina penyekat yang berjaya mewujudkan sambungan SOCKS, manakala permintaan aplikasi melalui soket yang dikembalikan memberikan hasil aplikasi kemudian. Untuk destinasi HTTPS, tambah TLS destinasi yang disahkan selepas SOCKS sebelum menghantar permintaan protokol itu. Anggap output nyahpepijat sebagai sensitif apabila kelayakan terlibat.

Artikel berkaitan