Remote Debugging Over Internet, Part Deux

This is a continuation of the topic Remote debugging over internet which due to the annoying auto-closure of topics on this forum cannot be posted there. I don’t know if @Beatrix_Willius was ever able to get it working, but I’ve just done it, using ZeroTier as suggested by @Greg_O_Lone, and thought I’d share the step-by-step for future seekers. Furthermore, I was able to do the setup entirely remotely using Google Remote Desktop. My situation is Xojo on Mac debugging on a Windows 10 target.

  1. On both machines, go to ZeroTier.com, download, and install the program. There’s a note in the ZeroTier forum at https://zerotier.atlassian.net/wiki/spaces/SD/pages/743931945/Installing+over+Windows+Remote+Desktop that says you can’t run the GUI installer over a remote desktop connection, but it worked for me operating the Windows machine remotely.
  2. Sign up for a free ZeroTier account.
  3. On your local machine at myzerotier.com, create a network.
  4. Copy the network’s Network ID to the clipboard and/or make a note of it.
  5. On the remote machine, launch ZeroTier and make a note of the remote machine’s ZeroTier Node ID.
  6. Back on the local machine’s browser, click on the network you created, which brings up a page full of settings and info. Scroll down to “Manually Add Member”, enter the Node ID of the remote machine, and click “Submit”.
  7. Scroll further down the page to the members list and you should see both machines. Check the “Auth” button at the left of each row to authorize them.
  8. Go to the ZeroTier app on both machines (menubar on Mac, System Tray on Win) and select “Join Network”, entering the Network ID you noted in Step 4.
  9. Check or un-check and re-check the “Connected” checkbox which is found under “Network Details” on Mac and under “Show Networks” on Windows. At some point Windows puts up a notification of the new network and asks if you want to be discoverable, to which I answer “yes”.
  10. Eventually the network status shown should be “OK” on both machines. If you get “Access Denied”, it’s something to do with the “authorization”, so check that stuff. At one point after messing with things while writing this I was denied access and had to quit ZeroTier on the Windows machine, relaunch and reconnect after which it worked again.
  11. At this point, I was like “OK, now what?”, because neither machine appeared in the other’s Network and nothing seemed to be happening, but I went ahead and launched the debugger stub and lo and behold, the IP address shown in the stub was that of the machine’s ZeroTier IP address. I put that into Xojo’s remote debugging setup, and voila, it actually freakin’ worked.
9 Likes

Followup:

After setting up a new remote PC, I had to go into Windows Firewall and enable access for the Remote Debugger Stub on Public networks, which had defaulted to off.