carta
gnunet-nat-server(1)

gnunet-nat-server1

Help gnunet setup test network setup with nat

Usage

gnunet-nat-server [{-c FILENAME | --config=FILENAME}] [{-d | --daemonize}] [{-h | --help}] [{-L FILENAME | --logfile=FILENAME}] [{-v | --version}] ⟨PORT⟩

Overview

Running a gnunet-nat-server is similar to running a hostlist server: it is a special service to the community with special requirements and no benefit to those running the service.

This program will listen on the specified PORT for incoming requests to test a peer's network connectivity. Incoming requests can ask it to connect to a given IPv4 address (and port) using TCP or UDP and to send a 2-byte test message using the specified address. The program can also be asked to send a "fake" ICMP response message to a given IPv4 address (for autonomous NAT traversal --- see the description in the respective research paper).

The idea is that gnunet-nat-server will be run on some trusted hosts with unrestricted connectivity to allow GNUnet users to test their network configuration. As written, the code allows any user on the Internet to cause the gnunet-nat-server to send 2-bytes of arbitrary data to any TCP or UDP port at any address. We believe that this is generally harmless.

When running gnunet-nat-server, make sure to use a configuration that disables most NAT options but enables 'enable_nat_client' and sets 'internal_address' to the global IP address of your local host. Also, the gnunet-helper-nat-client should be installed locally and run with root privileges (SUID), otherwise the gnunet-nat-server will not work properly.

Note that gnunet-nat-server could be run via gnunet-arm but typically is not. Also, the name of the host and port that gnunet-nat-server is run on should be specified in the NATSERVER option in the [setup] section of the configuration file of hosts that are supposed to autoconfigure with this server.

Normal GNUnet end-users should not concern themselves with gnunet-nat-server. In fact, distributions are encouraged to consider not shipping it at all.

The options are as follows:

-c FILENAME | --config=FILENAME

Use the configuration file FILENAME.

-d | --daemonize

Daemonize gnunet-nat-server (detach from terminal).

-h | --help

Print the help page.

-L LOGLEVEL | --log=LOGLEVEL

Configure logging to use LOGLEVEL.

-l FILENAME | --logfile=FILENAME

Configure logging to write logs to FILENAME.

-v | --version

Print the GNUnet version.

History

  • Debian 13 (Trixie) to Debian 11 (Bullseye): the text shown here
  • Debian 10 (Buster) to Debian 7 (Wheezy)

--daemonize since Debian 11 (Bullseye); --help since Debian 11 (Bullseye); --version since Debian 11 (Bullseye); -d since Debian 11 (Bullseye); -h since Debian 11 (Bullseye); -v since Debian 11 (Bullseye).

--config until Debian 10 (Buster); -c until Debian 10 (Buster).

Bugs

Report bugs by using https://bugs.gnunet.org or by sending electronic mail to ⟨[email protected]⟩.

From gnunet 0.20.0-7 in Debian 13 (Trixie). Parsed by carta from the page's mdoc source.