Cache successful dns resolves
Chinese govt regularly uses dns poisoning to make "jumping the wall" harder. From what I can tell this includes vpn addresses. I have been using manually configured vpn connections with hard coded ip addresses for vypr servers (found using ping) and this often works even when vpn client app fails. What would be good is if vpn app could cache ip addresses from successful connect attempts. When connecting it would try the dns supplied address first, and then if this failed for any reason (and note, cn govt often points their poisoned dns entries to real servers) then it would fallback and try the cached address.