When you connect to a server using SSL/TLS the client authenticates the server using the certificate that the server provides. If certificates mismatch an error page is shown instead. So you know you are connecting to the correct server.
SSH also provides a similar mechanism "server fingerprinting" to make sure you are connecting to the same server after the first connection. Microsoft's RDP does that too.
But I don't know if VPN protocols (L2TP, PPTP, OVPN) support this. Which are those? If we use those protocols can we be sure that the first connection's server fingerprint will be remembered and we will be warned the next time? (at least on major OS's?)
I'm asking because foreign WiFi spots can easily redirect VPN connection attempts and provide their own server which actually destroys the whole point of VPN.