Hello everyone! I'm having a bit of an issue. In summary, I'm developing a program to transfer data directly between two computers, and the computers will not be on the same network (in fact, they'll be physically separated by hundreds of miles). I've looked into assigning a static IP (IPv4) to my primary computer (which wouldn't work as I'm using college internet), using the System.Net.PeerToPeer library, the Teredo tunnel, trying to get a static IP using IPv6, using Google's DNS servers, and more, but everything is proving fruitless. Even looking for C# libraries has only led me to many that require a static ip.
If possible I'd like to avoid routing traffic through a central server located somewhere, as it may be taken offline at some point in the future, and I need this to last for as long as I have my computers running and internet is available. I can still play games that work p2p so there has to be some way to make a direct connection through the internet.
I know this is a network question but I'm using C# to implement my program, thus I'm asking here. I thank you in advance for your assistance!
by Hydrocharged via /r/csharp