If you’ve been looking for a good solution for hosting multiple SSL/TLS sites on the same cloud server, then look no further! Our new Port Translation feature for Cloud IPs solves that problem (and more).
Our Cloud Servers currently have a single network interface with a single private IPv4 address (and a nice fat IPv6 allocation of course, but most people aren’t ready to go IPv6-only just yet :). You can map multiple Cloud IPs to the same Cloud Server, but the server cannot differentiate between connections made to different Cloud IPs.
So, if you map multiple Cloud IPs to the same Cloud Server (or Load Balancer) expecting to be able to host multiple HTTPS services (with different certificates) you hit a bit of a problem. You’d hit the same problem with most mappable IP systems, such as EC2’s Elastic IPs.
You could use SSL’s “new” Server Name Indication feature to work around this, but it is still not supported in all browsers (in particular, no version of Internet Explorer on Windows XP supports it).
This is where our new Port Translation feature comes in. It allows you to change the destination port of incoming connections to a particular Cloud IP. So you can map several Cloud IPs to the same server, but the HTTPS port on each IP is mapped to a different port on the server, allowing you to serve different SSL certificates! You just configure your web server to listen on a different port for each virtual host.
This feature obviously isn’t just limited to HTTPS - it can translate any tcp or udp port, so you could serve several SMTP or DNS services for example.
As usual, we’ve written a step-by-step guide on using Port Translation on our docs site, and there is a reference page for more details.
We’ve got more neat Cloud IP features up our sleeves, so keep an eye out for more announcements coming soon.