Sure, I'll try to be as accurate as I can for windows, however my only windows install is in a virtual machine.
Prerequisites:
- A rooted Pre, with ssh installed
- An SSH client for your computer (Linux: ssh, Windows: PuTTY)
- Linux users only: Root access, the bnep kernel module and the following commands: pand, rfcomm, hciconfig, hcitool, ifconfig
Walk-though:
- Open bluetooth preferences on your Pre. Turn on bluetooth and wait until it says your phone is discoverable
- On Windows:
- Pair with your Pre (right click the bluetooth tray icon and select add device).
- Right-clicking the bluetooth tray icon and selecting join a bluetooth PAN will bring up a dialog to join a network.
- Select your pre and connect.
On Linux:- Start bluetooth, run '/etc/init.d/bluetooth restart'
- Run 'hciconfig' to get the name of your BT adapter. Its probably called hci0 but if not, replace hci0 with this name from now on.
- Run 'hciconfig hci0 up'
- Run 'hcitool scan' to look for devices. Select your device and copy the address (something like XX:XX:XX:XX:XX:XX)
- This step shouldn't be necessary, but it was for me: Run 'rfcomm connect hci0 XX:XX:XX:XX:XX:XX 1'. If you were successful, there should be a phone icon next to your computer's name on your Pre.
- Open another terminal. Run 'pand -n -c XX:XX:XX:XX:XX:XX', there should now be a globe icon on your Pre. It should say something like bnep0 connected, remember this name, use it in place of bnep0 in commands from now on
- Run 'ifconfig bnep0 10.1.1.11 up'. Test the connection by running 'ping -c 4 10.1.1.10' If you dont see errors you're connected.
- SSH Users: Run 'ssh -D 8080 -p 222 preuser@10.1.1.10', where preuser is your user name on your phone.
PuTTY Users: Enter 10.1.1.10 in the host name blank, and 222 in port. Go to Connection > SSH > Tunnels, enter 8080 in source port and select 'Dynamic' below. Click add. Click open, and login to your Pre.
- Here you have two options to configure network access:
- Per Application: Configure whatever application you use to use the SOCKS proxy at localhost:8080. For example to configure firefox, go to Options > Advanced > Network > Connection Settings, select Manual proxy, and enter localhost and 8080 in SOCKS Host and Port. Then type in about:config, enter 'dns' in filter and double click network.proxy.socks_remote_dns
- Generic: Look at tsocks (for linux) and FreeCap (for windows). I haven't used them, but they should allow any application to use the proxy