Socket Communication behind LAN

Hello,

 I want my P2P application to works well even when users are behind proxy or LAN.

i.e Two instance of my application should be able to communicate even if they are on different LANs but indirrectly connected to internet.

To elaborate it further, suppose there is a computer on my office LAN running my application. This computer is connected to internet through our Proxy server. Now any other computer which is also on LAN and is  indirectly connected to internet should be able to exchange files. We want to achieve this without installing anything on Proxy server.

I have seen software  KAZAA, which allows different users to exchange files even behind proxies,firewalls. We just need to open a Port on Proxy Server.

How can i achieve this functionality in C#?

Waiting for your valuable reply,
Yassar
 
YassarAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

1makCommented:
I think you'll need to have an intermediary server accessible from both proxied machines? I'm sure this is how Kazaa does it?
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
bhagyeshtCommented:
make it work on peer to peer basis for intra net for internet -intranet make it client-server or u need a component to be installed on the proxy too which tranlsaltes then ip for your program like a proxy does
0
crane-Commented:
you can't establish a connection between two computers if they both have private addresses in different lans.

don't know details about kazaa, but other similar networks use a kind of adaptive connections, meaning that they use the most direct route in each transfer. what this means in practice is that they use a third party when direct connection can't be made. this is all invisible to the user, so it may seem like they are talking directly to each other.
0
bhagyeshtCommented:
Split points between bhagyesht and 1mak
Bhagyesh Trivedi
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Programming

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.