TeamViewer.
http://www.teamviewer.com/I can recommend this free software (personal use) for remote access to remote computers. (with remotes permission).
It seems to work along the lines of both machines routing through TeamViewer's company servers, with a pre-defined user ID and password identifying both parties, so no problem with NATed connection.
Remember to go to 'options' and set them up !.
I have used it on some test machines first and it works ok, as a lot of you know I use Linux but there are downloads for mac's windows, tablets etc.
It will make maintenance easy on my daughters laptop while she is at uni and I must install it on my sister in laws computer I built for her a few weeks ago as I have had to make a 20 mile journey to sort it out before.
You can use VOIP , Chat, and Video on it as well. (but I could not get the video working
).