Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Java program without forward port in router

Tags:

java

sockets

I made application with java using socket. My computer is the server and my phone(android ) is the client. Only what i trying to do is to forward String from phone to client PC.

Everything works fine when i configure my router and open the port i using. i don't want every time when costumer will install my application will need to open port in the router.

I thought about using remote server that will run my server code. but i didn't find server that can do that . i don't want to make my pc a server for all costumers.

How does all the chats companies do it without open port?

like image 797
user1834345 Avatar asked Aug 25 '26 15:08

user1834345


1 Answers

You must look into UPnP. This is what /most/ if not /all/ torrent clients use to allow foreign connections, without forwarding ports. How chat clients do it is a different scenario. They use hacks such as firewall hole-punching using UDP (with an external server) http://www.h-online.com/security/features/How-Skype-Co-get-round-firewalls-747197.html see this link for details on UDP hole punching.

Also see this article http://www.codeproject.com/Articles/13285/Using-UPnP-for-Programmatic-Port-Forwardings-and-N for usage of UPnP. But this is in C++, but I think you will understand.

EDIT: http://4thline.org/projects/cling/ I found this. I think it can help you.

like image 146
Aniket Inge Avatar answered Aug 28 '26 04:08

Aniket Inge



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!