openvpn works great with hosts that have a dynamic ip.
you only need to make sure that you create a hostname for your 'server'.
have a look at
http://www.dyndns.org/
and make sure you use (on the client side) the resolv-retry parameter..
example:
resolv-retry 2592000 # 1 month
Cheers!