Someone asked a question on SuperUser today, about getting PocketCloud and RDP to play nicely together, where they could connect to the host from outside the network. I thought I’d repeat my answer here with more info.
Firstly, it’s important to note that PocketCloud Windows Companion uses the Remote Desktop Protocol, running on port 3389. It’s right there in the configuration.
PocketCloud also allows VNC connections, but this post is about the RDP side.
Secondly, I use the PocketCloud Windows Companion specifically to access my computer without needing to configure a router. After all, why else would you need it? Be that as it may, I decided to investigate how it works, and it’s straight-forward.
PocketCloud installs a Windows service on your machine, called
PocketCloudService.exe. It opens at least one low-numbered local port (random, by the look of things) and connects to a PocketCloud server on port 5222.
Here is a screen capture from Process Monitor (one of my favourite tools from SysInternals). I’ve included only the PocketCloudService.exe in my filter (Click to enlarge).
As you can see, there’s a connection to
pb-in-f125.1e100.net on port 5222. In all my testing, this stays constant, while the local port changes randomly. It’s obvious that this connection is made to keep the PocketCloud server abreast of your local port on which to connect through a firewall, without having to configure any rules.
(The connection to
crl.microsoft.com is made by all signed .NET assemblies. If you want to save some time, or you have a server with no Internet connection, you can create an entry in your
hosts file pointing
Naturally, if you want to configure you router to connect using port-forwarding, that works just fine. Keep in mind though that RDP has licencing rules, so on Windows 7 (for instance) you can only have one active session at any time.
So there you have it. It’s obvious on the face of things, but I thought it might be useful for interest’s sake.