One of the frustrating things about traveling is the obligatory pay-wireless that so many hotels and airports provide. If you check your mail at the airport and again at the hotel, it’s pretty easy to run up charges equivalent to a month’s worth of broadband, not to mention that you have to give your credit card to an unknown access provider affiliate.

There are two traditional ways of getting around the captive portal: tunneling IP over DNS and tunneling IP over ICMP.

In most situations, the firewall will be set up to block or proxy all TCP traffic, and all HTTP requests are redirected to the authentication server that wants you to enter a credit card. DNS lookups and ICMP traffic (ping, for example) are quite often left untouched, however, allowing you to use these services to move data through a remote computer under your control.

The basic setup is the same for both scenarios, and you can use the same server as a DNS and ICMP proxy. All you’ll need is a public DNS server that you can manage and another server with a static IP that you can access remotely. Thomer Gil has written two excellent howtos, one for using NSTX (IP-over-DNS), and the other for using ICMPTX (IP-over-ICMP). Follow the guides, install and configure the two packages, and you can get free access in a pinch from just about anywhere.

NSTX (IP-over-DNS) HOWTO
ICMPTX (IP-over-ICMP) HOWTO