My VPN knowledge is limited, so I won't be much help.
This is how to route Callcentric to an OBi via IP.
In Callcentric setup a Call Treatment.
Select "This Number"
Set the value to 0@xx.xx.xx.xx:pppp
Replace xx.xx.xx.xx with your public IP address
pppp is the port number of the OBi202's SPx where you want the call routed.
The port number is the SPx Service X_UserAgentPort
In your router port forward the X_UserAgentPort to the OBi202
You also need to port forward the RTP ports
The RTP port range is found here:
Service Providers -> ITSP Profile x RTP -> LocalPortMin thru LocalPortMax
I use FreeDNS for DDNS, but there are other free services.
http://freedns.afraid.org/menu/Replace your IP address in the Call Treatment with your DDNS name plus port#.
Some routers have the ability to update the DDNS address.
There is an OBi hack you can use:
http://www.obitalk.com/forum/index.php?topic=4797.msg36667#msg36667 ___________________________________________
You can route outbound calls from the Linksys ATA to the OBi202. You point the Linksys proxy to the IP address of the OBi202 and the port# of one of the SP trunks then add routing rules to the X_InboundCallRoute of that SP. The ATA must be able to call without registration. You can point both lines on the Linksys to the same SP and have outbound routed to different GV accounts by line#.
Edit:
People have added changes to block SIP Scanners. These changes might also block calls from Callcentric.