One of the much touted features of Android 2.2 Froyo is the ability to connect the phone to your computer through USB and allow the computer to use your phone's internet connection. This practice it commonly known as tethering.
I'm not sure about other mobile carriers in the US, but Verizon modifies/disables this feature in Android so that you can't use it. Verizon wants you to pay another $29.99 a month to enable this feature. That wouldn't be too much of a big deal if they didn't already require you to already have a $29.99/month unlimited data plan just so you can activate an Android phone on their network.
You can, however get this functionality back without shelling out more cash, thanks to the power of free and open source software. There's a free Android application called azilink that you need to install on your phone. You also need one of the binaries that's included in the Android SDK. You can then install OpenVPN on your computer and configure it to pass through the connection from your phone.
I won't go into detail on how to set it up. Shannon VanWagner has done a great job of explaining the setup on his Humans Enabled blog. I tried the manual setup, but couldn't get it working. I'm not sure, I might have screwed something up. I didn't have an internet connection for my laptop at the time and I was trying to download all of the packages to my phone and then transfer them to the computer. I undid my manual steps and I then tried the script and package that Shannon has on his site and it worked without a hitch. I have noticed some slight differences between his manual setup instructions and what you get using his script, so I suggest using the script. I used my phone's 3G connection to type up this post.