I am trying to make a server (apache) behind multilevel NAT accessible from the Internet.
Limitations:
- Avoid the relay. There is a public server (we call it OldMan) for login / stun, but its throughput is too low for relay data transfer.
- I do not have the right to configure NAT manually. 3. The user does not need to change his browser or device (ie. Works on android, ios and on any PC).
I tried UPnP
, but only works on 1-layer NAT .
I tried to look for NAT
bypass solutions for several months, but in vain.
I am studying STUN/TURN/ICE
and trying to use pjsip (icedemo.exe + numb), however its stunning cannot penetrate 2-layer NAT.
I tried Mist, Pwnat, but no luck. And libjingle sounds like an API for creating a Gtalk extension, as I know ... (?)
I also tried to make VPN / N2N to solve this problem, but it will be a serious overload for a shared server. Any VPN client requires the server (OldMan server) to forward all packets to others, right?
Are there any solutions to solve this problem? HTTP server behind layered NAT.
By the way, if STUN / TURN / ICE works, my idea is this: is this possible?
- The user has installed the application (for example: stun_browser_agent.exe)
- enter user type in Chrome: 127.0.0.1:9999
- Chrome is connected to the stun_browser_agent.exe daemon
- connect to HTTP server with Stun protocol
- The daemon on the Http server (for example: stun_apache_agent.exe) receives the entire message and passes it to the Apache daemon.
- Apache will answer all http information -> stun_apache_agent.exe -> stun_browser_agent.exe -> chrome
Then we do not have to change the browser and Apache.
Any available resource that I can use to implement this?
Thank you for your patience.
source share