I'm trying to connect directly (without 3rd party server) my computer to a friend's computer. We are both behind a ISP router, and would like (as a challenge!) to connect without modifying the router configuration.
As suggested here and here, we tried both TCP hole punching:
myself$ nc -p 7777 public-ip-friend 8888
friend$ nc -p 8888 public-ip-myself 7777
and UDP hole punching:
myself$ nc -u -p 7777 public-ip-friend 8888
friend$ nc -u -p 8888 public-ip-myself 7777
but none of them worked.
How to solve this?
Note: VPS (not behind a NAT) <--> my home computer (still behind router) works with the same method.