stunc(1) STUN test client.


stunc [OPTIONS] <stun-server-address>


The stunc utility can be used to gather information about possible NAT devices that are located between the client and STUN server.

stunc can provide the following information: the IP address and port as seen by the STUN server, detecting presence of NATs, and hints on the type of address translation done. It should be noted that the results of NAT type and life-time detection should be considered as hints. There is no guarantee that NAT(s) will handle future packets in the same way.

Command Line Options

The stunc utility accepts following command line options:

Perform a STUN binding discovery. stunc will report the client transport address (IP:port) as seen by the STUN server. In the presence of NATs, this address is allocated by the NAT closest to the STUN server.

Perform a STUN binding life-time check.

Perform a STUN binding type check. Notice that the results are only hints. Nondeterministic behaviour, resource exhaustion, or reboots of network elements can cause changes in NAT behaviour between successive runs of stunc.

Randomize the local port. Otherwise stunc let's the operating system select a free port.

Request a shared-secret over TLS. Tests whether the STUN server supports the shared-secret mechanism (needed to protect message integrity). Can be combined with -b, -l and -n.

Return Codes

0when successful 1when any errors detected


Discover the NAT binding, use a random local port:

$ stunc -b -r



Reporting Bugs

Report bugs to [email protected].


  • Pekka Pessi <pekka -dot pessi -at- nokia -dot- com>
  • Martti Mela <martti -dot mela -at- nokia -dot- com>
  • Kai Vehmanen <kai -dot vehmanen -at- nokia -dot- com>


Copyright (C) 2005,2006 Nokia Corporation.

This program is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.