STUN or "whatever" server with GenieACS


Hello, first of all I want to thank you about your great work.

The question is I’m trying to get working STUN and Geniacs, to link CPE in a asimmetric NAT network. Stuntman server and genieacs are in the same server and I think that are working.
The problem is that CPE only show their private IP in wan port, not the “public” IP that is NATTING.
I have read about that STUN protocol is not enough for achieve this, and we need a TURN server.
Has anybody successfully achieved this, or it is “impossible”?Any clue?

Then network is a WISP, and the outer CPE is a Router (mikrotik/ubiquiti/cambium/…) that owes the “public” IP does NAT to internal wireless router (could be any TR069/cwmp capable device, as fritzbox,TPlink, cambium, etc…).

Thanks in advance,



The device should report the STUN server IP/hostname and the port reserved for it in the parameter UDPConnectionRequestAddress. Can you confirm that?

Other than that, try setting the option ‘UDP_CONNECTION_REQUEST_PORT’. It should be the same port that’s used by your STUN server. Here’s a relevant comment from the code:

When a device is NAT’ed, the UDP Connection Request must originate from
the same address and port used by the STUN server, in order to traverse
the firewall. This does require that the Genieacs NBI and STUN server
are allowed to bind to the same address and port. The STUN server needs
to open its UDP port with the SO_REUSEADDR option, allowing the NBI to
also bind to the same port.


Hello, thanks about the response, I’m triyng the stuntman-server but there is no --reuseaddr option in the config file (I’ve tried in the CLI command and it throws --reuseradr is not available), genieACS has the UDP_CONNECTION_REQUEST_PORT configured.
This option should be configured in compile time?

Best regards,

S. Grau


Finally I’ve found that I have a old version of stuntman server, now I have the newest version, but still not working.
I wrote to device’s support (tp-link) because the device looks like doesn’t inform correctly, ( I can’t find the strings InternetGatewayDevice.ManagementServer.UDPConnectionRequestAddress, InternetGatewayDevice.ManagementServer.STUNEnable in genieacs GUI.)

I’ll keep in touch.

Thank you very much