Previous: Tuning POST and PUT, Up: Network


3.12 Tunnelling connections

Polipo is an HTTP proxy; it proxies HTTP traffic, and clients using other protocols should either establish a direct connection to the server or use an ad hoc proxy.

Due to wide-spread brain-damage1, however, there are some circumstances in which establishing a direct connection to the server is not possible. In such situations, it is possible to have Polipo behave as a tunnelling proxy — a proxy that merely forwards traffic between the client and the server without understanding it. Polipo enters tunnel mode when the server requests it by using the HTTP `CONNECT' method.

Most web browsers will use this technique for HTTP over SSL if configured to use Polipo as their `https proxy'. OpenSSH can also use it to cross misconfigured firewalls.

The variable tunnelAllowedPorts specifies the set of ports that Polipo will accept to tunnel traffic to. It defaults to allowing ssh, HTTP, https, rsync, IMAP, imaps, POP and pops traffic.


Footnotes

[1] Sometimes known as NAT.