---
name: "Net::Proxy::Connector::connect"
section: "3pm"
platform: "linux"
package: "libnet-proxy-perl"
version: "0.13-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Net::Proxy::Connector::connect"
---

# Net::Proxy::Connector::connect(3pm)

Create CONNECT tunnels through HTTP proxies

## NAME

Net::Proxy::Connector::connect - Create CONNECT tunnels through HTTP proxies

## SYNOPSIS

```
    # sample proxy using Net::Proxy::Connector::tcp
    #                and Net::Proxy::Connector::connect
    use Net::Proxy;
    # listen on localhost:6789
    # and proxy to remotehost:9876 through proxy.company.com:8080
    # using the given credentials
    my $proxy = Net::Proxy->new(
        in  => { type => 'tcp', port => '6789' },
        out => {
            type        => 'connect',
            host        => 'remotehost',
            port        => '9876',
            proxy_host  => 'proxy.company.com',
            proxy_port  => '8080',
            proxy_user  => 'jrandom',
            proxy_pass  => 's3kr3t',
            proxy_agent => 'Mozilla/4.04 (X11; I; SunOS 5.4 sun4m)',
        },
    );
    $proxy->register();
    Net::Proxy->mainloop();
```

## DESCRIPTION

Net::Proxy::Connecter::connect is a Net::Proxy::Connector that uses the HTTP CONNECT method to ask the proxy to create a tunnel to an outside server.

Be aware that some proxies are set up to deny the creation of some outside tunnels (either to ports other than 443 or outside a specified set of outside hosts).

This connector is only an "out" connector.

## CONNECTOR OPTIONS

Net::Proxy::Connector::connect accepts the following options:

## "out"

- host

  The destination host.

- port

  The destination port.

- proxy\_host

  The web proxy name or address.

- proxy\_port

  The web proxy port.

- proxy\_user

  The authentication username for the proxy.

- proxy\_pass

  The authentication password for the proxy.

- proxy\_agent

  The user-agent string to use when connecting to the proxy.

## AUTHOR

Philippe 'BooK' Bruhat, `"<book@cpan.org>"`.

## BUGS

All the authentication schemes supported by `"LWP::UserAgent"` should be supported (we use an `"LWP::UserAgent"` internally to contact the proxy).

This means we should also support NTLM, since it is supported as from `"libwww-perl"` 5.66. `"Net::Proxy::Connector::connect"` has not been actually tested with NTLM, though. Any report of success or failure with a NTLM proxy will be appreciated.

## HISTORY

This module is based on my script `"connect-tunnel"`, that provided a command-line interface to create tunnels though HTTP proxies. It was first published on CPAN on March 2003.

A better version of `"connect-tunnel"` (using `"Net::Proxy"`) is provided this distribution.

## COPYRIGHT

Copyright 2006-2014 Philippe 'BooK' Bruhat, All Rights Reserved.

## LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
