OpenVPN TLS handshake failing - what ELSE could it be?

Solution 1:

Turns out I was kind of right: the local 22.33.44.55 option in OpenVPN's server.config was missing. Adding it and restarting OpenVPN solved the issue, and UDP transport now works on my secondary IP. Without it, responses from OpenVPN were being sent via the default IP - though I don't understand why this didn't also prevent TCP from working. Schoolboy error, if you like, but the OpenSSL config script I used (https://github.com/Angristan/OpenVPN-install) did ask for the IP address to use during set-up, so I just assumed this had been configured correctly.