aboutsummaryrefslogtreecommitdiff
path: root/doc/man/gnunet-nat.1
blob: 5bdbb21eb33fc6d12a0d84aa8b06907995b49728 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
.TH GNUNET\-NAT 1 "27 Nov 2016" "GNUnet"

.SH NAME
gnunet\-nat \- interact with the NAT service

.SH SYNOPSIS
.B gnunet\-nat
.RI [ options ]
.br

.SH DESCRIPTION

This tool allows testing various NAT traversal functions, as well
as attempting auto\-configuration.

.SH OPTIONS
.B
.IP "\-a,  \-\-auto"
Attempt auto\-configuration for NAT traversal.

.B
.IP "\-b ADDRESS,  \-\-bind=ADDRESS"
Assume that the service is (locally) bound to ADDRESS.

.B
.IP "\-c FILENAME,  \-\-config=FILENAME"
Use the configuration file FILENAME.

.B
.IP "\-e ADDRESS,  \-\-external=ADDRESS"
Assume that ADDRESS is the globally visible address of the peer.

.B
.IP "\-i ADDRESS,  \-\-in=ADDRESS"
Assuming we are listening at ADDRESS for connection reversal requests.

.B
.IP "\-r ADDRESS,  \-\-remote=ADDRESS"
Ask the peer at ADDRESS for connection reversal, using the local address for the target address of the reversal.

.B
.IP "\-p ADDRESS,  \-\-punch=ADDRESS"
A hole was punched manually through the NAT. We should use ADDRESS as our external hostname and port for advertising for incoming requests. The special hostname 'AUTO' can be used to indicate that GNUnet should determine the external IP address by other means (such as upnpc), and just take the port number from ADDRESS.

.B
.IP "\-s,  \-\-stun"
Enable processing of STUN requests.  Will try to read UDP packets from the bind address and handle the packets if they are STUN packets. Will only work with UDP.

.B
.IP "\-t,  \-\-tcp"
Use TCP.

.B
.IP "\-u,  \-\-udp"
Use UDP.

.B
.IP "\-w,  \-\-write"
Write configuration to configuration file, useful in combination with autoconfiguration (\-a).

.B
.IP "\-W,  \-\-watch"
Watch for connection reversal requests.  

.SH EXAMPLES
.PP

\fBBasic examples\fR

We are bound to "0.0.0.0:8080" on UDP and want to obtain all applicable IP addresses:

  # gnunet-nat -i 0.0.0.0:8080 -u

We are bound to "::0" on port 8080 on TCP and want to obtain all applicable IP addresses:

  # gnunet-nat -i '[::0]':8080 -t

We are bound to "127.0.0.1:8080" on UDP and want to obtain all applicable IP addresses:

  # gnunet-nat -i 127.0.0.1:8080 -u

\fBICMP-based NAT traversal:\fR

Watch for connection reversal request:

  # gnunet-nat FIXME

Initiate connection reversal request:

  # gnunet-nat FIXME

\fBManual hole punching:\fR

Assume manually punched NAT, but determine external IP automatically:

  # gnunet-nat -t -p AUTO:8080

\fBSTUN-based XXX:\fR

XXX:

  # gnunet-nat FIXME -s

\fBAutomatic configuration:\fR

Probe and write result to configuration:

  # gnunet-nat -aw
  

.SH BUGS
Report bugs by using Mantis <https://gnunet.org/bugs/> or by sending electronic mail to <gnunet\-developers@gnu.org>

.SH SEE ALSO
gnunet\-transport(1)