SSH connection to a remote virtual machine
I’ve recently encountered the following issue while working on my thesis: I need to work on my own machine, and I own a laptop and a desktop. They are all using WINDOWS. As the dependencies require a Linux environment, I installed Ubuntu on a Vmware virtual machine and placed all of my data on it. I’d like to connect my laptop to the virtual machine so I’m able to control it from the office, the library, or anywhere else (the desktop is in my home and is unportable).
Yet, I was unable to ping my desktop’s IP address from school. Initially, I verified the IP address of the virtual machine; as I am using bridge mode, the IP address is identical for both machines. So the question is: why can’t I effectively ping my desktop? Initially, I used my router to attempt port forwarding. But, after activating the DMZ on my ASUS router, it still does not function. After conducting extensive investigations, I determined that my Internet service provider (ISP) does not offer public IP addresses.
Since changing the internet in my apartment is quite difficult, I was searching for alternative methods, such as NAT traversal. Classic tools like Frp and Ngrok are available for this purpose. Yet, as an intermediary, they all require a server with a public IP address. Interestingly, my application was denied when I attempted to use the free one offered by Oracle. So I’ve decided to utilize the Zerotier finally. As there are already thousands of tutorials on how to construct a LAN by using Zerotier, it is unnecessary for me to do it again. The only comment I have is that the interface is incredibly user-friendly and the connection is quick. In addition, I’ve learned that Tailscale and Headscale can do similar functions to Zerotier, and while I haven’t tried them yet, I assume they are also viable options.