banner
王白水

白水房

志闲少欲,心安不惧 泛中医论坛https://forum.beginner.center/
github
xiaoyuzhou

Remote Programming Adventure

Achievements:#

The remote host (Windows) exposes port 22 through internal network penetration.
The local lightweight machine operates the remote host through the vscode remote-ssh plugin.
It can achieve:

  • Regardless of which computer is used, as long as vscode is available, the configured remote Windows host can be operated similar to a Linux cloud server.
  • Use various vscode plugins (such as Amazon's recently announced codewhisperer).

If you are interested and need a tutorial, I will provide a tutorial based on your feedback (comments/likes).

Failed Experiences:#

Success is always the same, but failures can be colorful. Here, I will share the ups and downs of the past few days.

  • Attempted to use remote desktop:
    • Tried mainstream remote desktop applications like Todesk and Pugongying, but they were laggy.
    • Tried the niche open-source Rustdesk, the official free server was occasionally usable.
    • Tried using the free internal network penetration software tailscale + Microsoft Remote Desktop RDP, but it was laggy.
    • Bought an affordable high-bandwidth VPS (80rmb per year) and set up a self-built rustdesk server, but it was laggy.
  • Gave up on remote desktop and found the code server solution (vscode web version). By this time, I had been sitting all day and my mind started to become confused.
    • Deployed code server on the remote host and exposed it through the web (I had previously worked with Jupyter Notebook and thought it would be similar), but encountered errors when deploying code server with npm. Spent a long time fixing npm, but the deployment failed.
    • Tried opening a Ubuntu system using WSL on the remote host and deployed code server using Linux, but by this time, I was mentally exhausted and didn't want to deal with the numerous errors. Gave up.
  • Continued searching and asking others, found the vscode+remote ssh solution.
    • Tried again the next day, used my VPS to penetrate port 22 of the remote machine, was able to connect but frequently experienced disconnections.
    • Gave up on using my own VPS and switched to the domestic sakura frp (came across it while searching for frp tutorials).
    • The sakura client was very easy to use and quickly configured! Success ✌️

Follow-up:#

If my remote machine could use IPv6, it would be great. No need to bother with internal network penetration 😮‍💨

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.