I use two products since both are required using this approach. One is for the remote desktop functionality, and the other facilitates "dynamic remote host" connectivity since typically your home PC uses DHCP to get its IP address from your ISP:
(1) RealVNC, which is the remote access host-server/client product that permits remote desktop access.
There is a server application running on the remote machine to which I want to connect. It runs as a Windows service, so I can even re-boot remotely and enter their userid/password for Windows logon.
You have complete access to their remote desktop, conceptual keyboard and conceptual mouse. The person sitting at the remote machine desktop can see what you're doing, and also has local control over the same keyboard and mouse (sometimes you scream "PUT IT DOWN! LET ME DRIVE!" but that's to be expected)
Supports operation in a resizable window or full-screen, with scaling based on the size of the host target machine's desktop and your own client machine desktop or window size.
Provides a "mirror
driver" for super-fast access even to very large desktops, and can also "black out" the remote desktop background to temporarily eliminate crazy high-pixel-count images that would otherwise take lots of worthless bandwidth to refresh that background on my client machine's window.
Provides remote printing capability, for example doing a print from the remote host server machine onto a printer on my own client machine.
Provides COPY (i.e. remote file transfer) between the two connected machines.
Provides "Address Book" for convenience, to let you define your remote host machines in a directory with login information pre-stored in the setup, and then you can easily just select an entry and click "connect".
This is a highly regarded global product, used worldwide both on a personal level as I do, as well on an enterprise level for companies with hundreds or thousands of desktops that support needs to "remote into".
(2) DynDNS Updater, which every 10 minutes provides the current IP address of the host machine on which it's running to a web server. The host machine has been given a symbolic URL address (i.e. like a web server or dynamic DNS) that others can then connect to symbolically, using that symbolic host name rather than a fixed IP.
Since typical DSL or cable modem setups involve DHCP assignment of IP address to subscribers, with leases for the assigned IP address that expire periodically and get renewed with possibly different values, it is important for RealVNC Client (running on my machine) to be able to connect to RealVNC Server (on the host machines I'm trying to connect to) symbolically, independent of the actual IP address assigned at the time which I of course have no knowledge of.
That's what DynDNS Updater does. Keeps the web-based DNS resolution for the symbolic host name, so that I'm really connecting to the target host machine through the DNS resolution provided by the DynDNS Updater service.
One DynDNS Updater license for you can support up to 30 "remote host names". Or, there is a
1-2 host version for free (so you can even try it out with one of your family members, to learn how easy it is to set up and use, and then expand for all of your intended support group).
Both products are NOT FREE, but very inexpensive for what they provide. And they are both reliable, commercial-quality and industrial-strength. I've been using both for many many years and they are guaranteed 100% problem-free.
Both of these products get my absolute highest ratings and recommendations. I could not live without them (nor can my family and friends, whom I support when they have trouble or problems or questions).