Why it works - To link a SIP account to GoogleVoice, you need to have an incoming U.S. phone number. With a few exceptions, most providers charge for this (if they offer it at all). But most SIP providers do allow you to call other users on their network for free. ipkall gives you a free DID (incoming phone number) that links to your SIP username so that when users dial your number, it is as if they are calling directly to your SIP username. Now that you can receive calls for free, you just need to link the phone number to GoogleVoice.
How to-
STEP 1. Configure the SIP Account in Acrobits Softphone or Groundwire. I tested this with voipcheap and callcentric, but it should work with any provider that allows free calls within their network. If you haven't set up a SIP account in the Softphone or Groundwire yet, check out the video below.
http://www.acrobits.cz/7/setting-up-your-sip-account-on-iphone
STEP 2. Link the account to a DID with ipkall. Go to http://www.ipkall.com/ and click on signup.
Here is what you'll need for callcentric and voipcheap, but it is relatively easy to configure no matter the provider.