New upstream version 0.7
Andrew Shadura
6 years ago
0 | nat-traverse -- Use of UDP to traverse NAT gateways | |
0 | nat-traverse -- NAT gateway traversal utility | |
1 | ||
2 | 2017-10-28 | |
3 | * v0.7: Fixed a minor syntactical issue which caused a warning on modern | |
4 | Perl and relicensed under GPL version 3 or later. | |
1 | 5 | |
2 | 6 | 2012-12-24 |
3 | 7 | * v0.6: Fixed the port forwarding example in the documentation, |
0 | 0 | NAME |
1 | nat-traverse - Use of UDP to traverse NAT gateways | |
1 | nat-traverse - NAT gateway traversal utility | |
2 | 2 | |
3 | 3 | SYNOPSIS |
4 | 4 | To create a simple text-only tunnel, use the commands |
10 | 10 | on "right". See "EXAMPLES" for more. |
11 | 11 | |
12 | 12 | VERSION |
13 | This document describes nat-traverse v0.5. | |
13 | This document describes nat-traverse v0.7. | |
14 | 14 | |
15 | 15 | DESCRIPTION |
16 | 16 | nat-traverse establishes connections between nodes which are behind NAT |
136 | 136 | above. |
137 | 137 | |
138 | 138 | Setup of a VPN with OpenVPN |
139 | You can use <OpenVPN> over nat-traverse if you want to have a *secure* | |
140 | VPN. | |
139 | You can use OpenVPN <https://openvpn.net/> over nat-traverse if you want | |
140 | to have a *secure* VPN. | |
141 | 141 | |
142 | 142 | Using OpenVPN over nat-traverse requires only one change to OpenVPN's |
143 | 143 | configuration file, presuming that you don't want to use OpenVPN's |
188 | 188 | port numbers are (in general) not predictable. |
189 | 189 | |
190 | 190 | SEE ALSO |
191 | <RFC 1631 at http://www.ietf.org/rfc/rfc1631.txt> | |
191 | RFC 1631 at https://www.ietf.org/rfc/rfc1631.txt | |
192 | <https://www.ietf.org/rfc/rfc1631.txt> | |
192 | 193 | The IP Network Address Translator (NAT). K. Egevang, P. Francis. May |
193 | 194 | 1994. (Obsoleted by RFC3022) (Status: INFORMATIONAL) |
194 | 195 | |
195 | <RFC 3022 at http://www.ietf.org/rfc/rfc3022.txt> | |
196 | RFC 3022 at https://www.ietf.org/rfc/rfc3022.txt | |
197 | <https://www.ietf.org/rfc/rfc3022.txt> | |
196 | 198 | Traditional IP Network Address Translator (Traditional NAT). P. |
197 | 199 | Srisuresh, K. Egevang. January 2001. (Obsoletes RFC1631) (Status: |
198 | 200 | INFORMATIONAL) |
199 | 201 | |
200 | <RFC 1661 at http://www.ietf.org/rfc/rfc1661.txt> | |
202 | RFC 1661 at https://www.ietf.org/rfc/rfc1661.txt | |
203 | <https://www.ietf.org/rfc/rfc1661.txt> | |
201 | 204 | The Point-to-Point Protocol (PPP). W. Simpson, Ed.. July 1994. |
202 | 205 | (Obsoletes RFC1548) (Updated by RFC2153) (Also STD0051) (Status: |
203 | 206 | STANDARD) |
204 | 207 | |
205 | <http://ppp.samba.org/> | |
208 | <https://ppp.samba.org/> | |
206 | 209 | Website of Paul's PPP Package (open source implementation of the |
207 | 210 | Point-to-Point Protocol (PPP) on Linux and Solaris) |
208 | 211 | |
209 | <German talk about nat-traverse at | |
210 | http://linide.sourceforge.net/nat-traverse/nat-traverse-talk.pdf> | |
212 | German talk about nat-traverse at | |
213 | https://www.speicherleck.de/iblech/nat-traverse/nat-traverse-talk.pdf | |
214 | <https://www.speicherleck.de/iblech/nat-traverse/nat-traverse-talk.pdf> | |
211 | 215 | Dieser Vortrag zeigt, wie man einen Tunnel zwischen zwei Computern, |
212 | 216 | die beide hinter NAT-Gateways sitzen, hinbekommt. Dazu wird ein |
213 | 217 | neues Programm vorgestellt, welches sowohl einfache Tastendrücke an |
216 | 220 | VPN schnell aufgebaut. |
217 | 221 | |
218 | 222 | AUTHOR |
219 | Copyright (C) 2005, 2012 Ingo Blechschmidt, <iblech@web.de>. | |
220 | ||
221 | You may want to visit nat-traverse's Freecode project page, | |
222 | <http://freecode.com/projects/nat-traverse/>. | |
223 | Copyright (C) 2005, 2012, 2017 Ingo Blechschmidt, | |
224 | <iblech@speicherleck.de>. | |
225 | ||
226 | The source code repository is hosted at | |
227 | <https://gitlab.com/iblech/nat-traverse>. | |
223 | 228 | |
224 | 229 | LICENSE |
225 | 230 | This program is free software; you can redistribute it and/or modify it |
226 | 231 | under the terms of the GNU General Public License as published by the |
227 | Free Software Foundation; either version 2 of the License, or (at your | |
232 | Free Software Foundation; either version 3 of the License, or (at your | |
228 | 233 | option) any later version. |
229 | 234 | |
230 | 235 | This program is distributed in the hope that it will be useful, but |
0 | nat-traverse (0.6-1) unstable; urgency=low | |
1 | ||
2 | * New upstream release. | |
3 | * New maintainer. | |
4 | * Use dh9 short form. | |
5 | * Use source format 3.0 (quilt). | |
6 | * Bump Standards-Version to 3.9.3 (no changes needed). | |
7 | * Fix Homepage header. | |
8 | * Specify proper dependencies using ${perl:Depends}. | |
9 | * Update short description. | |
10 | * Update copyright information, refer to GPL properly. | |
11 | * Fix watch file. | |
12 | * Use Architecture: all as the package is architecture-independent. | |
13 | ||
14 | -- Andrew Shadura <andrewsh@debian.org> Wed, 20 Mar 2013 22:59:18 +0100 | |
15 | ||
16 | nat-traverse (0.4-1) unstable; urgency=low | |
17 | ||
18 | * New upstream release. | |
19 | * Bumped Standards-Version to 3.6.2 (no further changes). | |
20 | ||
21 | -- Michael Prokop <mika@grml.org> Wed, 24 Aug 2005 11:59:18 +0200 | |
22 | ||
23 | nat-traverse (0.3-1) unstable; urgency=low | |
24 | ||
25 | * Initial release. | |
26 | ||
27 | -- Michael Prokop <mika@grml.org> Mon, 18 Jul 2005 22:01:25 +0200 | |
28 |
0 | Source: nat-traverse | |
1 | Section: net | |
2 | Priority: optional | |
3 | Maintainer: Andrew Shadura <andrewsh@debian.org> | |
4 | Build-Depends: debhelper (>= 9) | |
5 | Standards-Version: 3.9.3 | |
6 | Homepage: https://www.speicherleck.de/iblech/nat-traverse/ | |
7 | Vcs-Hg: http://anonscm.debian.org/hg/collab-maint/nat-traverse/ | |
8 | Vcs-Browser: http://anonscm.debian.org/hg/collab-maint/nat-traverse/ | |
9 | ||
10 | Package: nat-traverse | |
11 | Architecture: all | |
12 | Depends: ${perl:Depends}, ${misc:Depends} | |
13 | Description: NAT gateway traversal utility | |
14 | nat-traverse establishes connections between nodes which are | |
15 | behind NAT gateways, i.e. hosts which do not have public IP | |
16 | addresses. Additionally, you can setup a small VPN by using pppd | |
17 | on top of nat-traverse. nat-traverse does not need an external | |
18 | server on the Internet, and it isn't necessary to reconfigure | |
19 | the involved NAT gateways, either. nat-traverse works | |
20 | out-of-the-box. |
0 | Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ | |
1 | Upstream-Name: nat-traverse | |
2 | Upstream-Contact: Ingo Blechschmidt <iblech@web.de> | |
3 | Source: http://m19s28.dyndns.org/iblech/nat-traverse/ | |
4 | Copyright: 2005, 2012 Ingo Blechschmidt | |
5 | License: GPL-2+ | |
6 | This program is free software; you can redistribute it and/or modify it | |
7 | under the terms of the GNU General Public License as published by the | |
8 | Free Software Foundation; either version 2 of the License, or (at your | |
9 | option) any later version. | |
10 | . | |
11 | This program is distributed in the hope that it will be useful, but | |
12 | WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General | |
14 | Public License for more details. | |
15 | . | |
16 | You should have received a copy of the GNU General Public License along | |
17 | with this program; if not, write to the Free Software Foundation, Inc., | |
18 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
19 | . | |
20 | On Debian systems, the full text of the GNU Library General Public | |
21 | License version 2 can be found in the file | |
22 | `/usr/share/common-licenses/GPL-2'. |
0 | # See uscan(1) for format | |
1 | ||
2 | # Compulsory line, this is a version 3 file | |
3 | version=3 | |
4 | http://m19s28.dyndns.org/iblech/nat-traverse/ nat-traverse-([\d.]*).tar.bz2 |
0 | #!/usr/bin/perl | |
1 | # nat-traverse -- Use of UDP to traverse NAT gateways | |
2 | # Copyright (C) 2005, 2012 Ingo Blechschmidt <iblech@web.de> | |
0 | #!/usr/bin/env perl | |
1 | # nat-traverse -- NAT gateway traversal utility | |
2 | # Copyright (C) 2005, 2012, 2017 Ingo Blechschmidt <iblech@speicherleck.de> | |
3 | 3 | # |
4 | 4 | # This program is free software; you can redistribute it and/or |
5 | 5 | # modify it under the terms of the GNU General Public License |
6 | # as published by the Free Software Foundation; either version 2 | |
6 | # as published by the Free Software Foundation; either version 3 | |
7 | 7 | # of the License, or (at your option) any later version. |
8 | 8 | # |
9 | 9 | # This program is distributed in the hope that it will be useful, |
10 | 10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 | 12 | # GNU General Public License for more details. |
13 | 13 | # |
14 | 14 | # You should have received a copy of the GNU General Public License |
15 | 15 | # along with this program; if not, write to the Free Software |
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, | |
17 | # USA. | |
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
18 | 17 | |
19 | 18 | use warnings; |
20 | 19 | use strict; |
37 | 36 | "timeout=i" => \(my $TIMEOUT = 10), |
38 | 37 | "quit-after-connect" => \my $QUIT_AFTER_CONNECT, |
39 | 38 | "cmd=s" => \my $CMD, |
40 | "version" => sub { print "nat-traverse 0.6\n"; exit }, | |
39 | "version" => sub { print "nat-traverse 0.7\n"; exit }, | |
41 | 40 | "help" => \&usage, |
42 | 41 | ) or usage(); |
43 | 42 | usage() unless @ARGV == 1; |
85 | 84 | debug " done.\n"; |
86 | 85 | |
87 | 86 | # Waiting for ACK packet so we see the connection is established. |
88 | debug "Waiting for ACK (timeout: $TIMEOUT\Es)... "; | |
87 | debug "Waiting for ACK (timeout: ${TIMEOUT}s)... "; | |
89 | 88 | { |
90 | 89 | local $SIG{ALRM} = sub { die " timeout.\n" }; |
91 | 90 | alarm $TIMEOUT; |
154 | 153 | |
155 | 154 | # Display usage info. |
156 | 155 | sub usage { print STDERR <<'USAGE'; exit } |
157 | nat-traverse v0.6 -- Use of UDP to traverse NAT gateways | |
156 | nat-traverse v0.7 -- NAT gateway traversal utility | |
158 | 157 | |
159 | 158 | Usage: |
160 | 159 | user@left $ nat-traverse [options] port1:natgw-of-right:port2 |
180 | 179 | --help This help. |
181 | 180 | |
182 | 181 | Options may be abbreviated to uniqueness. |
183 | Run "perldoc nat-traverse" for more information. | |
182 | Run "man nat-traverse" for more information. | |
184 | 183 | USAGE |
185 | 184 | |
186 | 185 | |
187 | 186 | =head1 NAME |
188 | 187 | |
189 | nat-traverse - Use of UDP to traverse NAT gateways | |
188 | nat-traverse - NAT gateway traversal utility | |
190 | 189 | |
191 | 190 | =head1 SYNOPSIS |
192 | 191 | |
200 | 199 | |
201 | 200 | =head1 VERSION |
202 | 201 | |
203 | This document describes nat-traverse v0.6. | |
202 | This document describes nat-traverse v0.7. | |
204 | 203 | |
205 | 204 | =head1 DESCRIPTION |
206 | 205 | |
344 | 343 | |
345 | 344 | =head2 Setup of a VPN with OpenVPN |
346 | 345 | |
347 | You can use L<OpenVPN|http://openvpn.net/> over nat-traverse if you want to | |
346 | You can use L<OpenVPN|https://openvpn.net/> over nat-traverse if you want to | |
348 | 347 | have a I<secure> VPN. |
349 | 348 | |
350 | 349 | Using OpenVPN over nat-traverse requires only one change to OpenVPN's |
401 | 400 | =over |
402 | 401 | |
403 | 402 | =item L<RFC 1631 at |
404 | http://www.ietf.org/rfc/rfc1631.txt|http://www.ietf.org/rfc/rfc1631.txt> | |
403 | https://www.ietf.org/rfc/rfc1631.txt|https://www.ietf.org/rfc/rfc1631.txt> | |
405 | 404 | |
406 | 405 | The IP Network Address Translator (NAT). K. Egevang, P. Francis. May 1994. |
407 | 406 | (Obsoleted by RFC3022) (Status: INFORMATIONAL) |
408 | 407 | |
409 | 408 | =item L<RFC 3022 at |
410 | http://www.ietf.org/rfc/rfc3022.txt|http://www.ietf.org/rfc/rfc3022.txt> | |
409 | https://www.ietf.org/rfc/rfc3022.txt|https://www.ietf.org/rfc/rfc3022.txt> | |
411 | 410 | |
412 | 411 | Traditional IP Network Address Translator (Traditional NAT). P. Srisuresh, |
413 | 412 | K. Egevang. January 2001. (Obsoletes RFC1631) (Status: INFORMATIONAL) |
414 | 413 | |
415 | 414 | =item L<RFC 1661 at |
416 | http://www.ietf.org/rfc/rfc1661.txt|http://www.ietf.org/rfc/rfc1661.txt> | |
415 | https://www.ietf.org/rfc/rfc1661.txt|https://www.ietf.org/rfc/rfc1661.txt> | |
417 | 416 | |
418 | 417 | The Point-to-Point Protocol (PPP). W. Simpson, Ed.. July 1994. (Obsoletes |
419 | 418 | RFC1548) (Updated by RFC2153) (Also STD0051) (Status: STANDARD) |
420 | 419 | |
421 | =item L<http://ppp.samba.org/> | |
420 | =item L<https://ppp.samba.org/> | |
422 | 421 | |
423 | 422 | Website of Paul's PPP Package (open source implementation of the |
424 | 423 | Point-to-Point Protocol (PPP) on Linux and Solaris) |
425 | 424 | |
426 | 425 | =item L<German talk about nat-traverse at |
427 | http://linide.sourceforge.net/nat-traverse/nat-traverse-talk.pdf|http://linide.sourceforge.net/nat-traverse/nat-traverse-talk.pdf> | |
426 | https://www.speicherleck.de/iblech/nat-traverse/nat-traverse-talk.pdf|https://www.speicherleck.de/iblech/nat-traverse/nat-traverse-talk.pdf> | |
428 | 427 | |
429 | 428 | Dieser Vortrag zeigt, wie man einen Tunnel zwischen zwei Computern, die |
430 | 429 | beide hinter NAT-Gateways sitzen, hinbekommt. Dazu wird ein neues Programm |
436 | 435 | |
437 | 436 | =head1 AUTHOR |
438 | 437 | |
439 | Copyright (C) 2005, 2012 Ingo Blechschmidt, E<lt>iblech@web.deE<gt>. | |
440 | ||
441 | You may want to visit nat-traverse's Freecode project page, | |
442 | L<http://freecode.com/projects/nat-traverse/>. | |
438 | Copyright (C) 2005, 2012, 2017 Ingo Blechschmidt, E<lt>iblech@speicherleck.deE<gt>. | |
439 | ||
440 | The source code repository is hosted at L<https://gitlab.com/iblech/nat-traverse>. | |
443 | 441 | |
444 | 442 | =head1 LICENSE |
445 | 443 | |
446 | 444 | This program is free software; you can redistribute it and/or modify it under |
447 | 445 | the terms of the GNU General Public License as published by the Free Software |
448 | Foundation; either version 2 of the License, or (at your option) any later | |
446 | Foundation; either version 3 of the License, or (at your option) any later | |
449 | 447 | version. |
450 | 448 | |
451 | 449 | This program is distributed in the hope that it will be useful, but WITHOUT ANY |
452 | 450 | WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A |
453 | PARTICULAR PURPOSE. See the GNU General Public License for more details. | |
451 | PARTICULAR PURPOSE. See the GNU General Public License for more details. | |
454 | 452 | |
455 | 453 | You should have received a copy of the GNU General Public License along with |
456 | 454 | this program; if not, write to the Free Software Foundation, Inc., 51 Franklin |
457 | Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
455 | Street, Fifth Floor, Boston, MA 02110-1301, USA. |
0 | .\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.14) | |
0 | .\" Automatically generated by Pod::Man 4.07 (Pod::Simple 3.32) | |
1 | 1 | .\" |
2 | 2 | .\" Standard preamble: |
3 | 3 | .\" ======================================================================== |
37 | 37 | . ds PI \(*p |
38 | 38 | . ds L" `` |
39 | 39 | . ds R" '' |
40 | . ds C` | |
41 | . ds C' | |
40 | 42 | 'br\} |
41 | 43 | .\" |
42 | 44 | .\" Escape single quotes in literal strings from groff's Unicode transform. |
43 | 45 | .ie \n(.g .ds Aq \(aq |
44 | 46 | .el .ds Aq ' |
45 | 47 | .\" |
46 | .\" If the F register is turned on, we'll generate index entries on stderr for | |
48 | .\" If the F register is >0, we'll generate index entries on stderr for | |
47 | 49 | .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index |
48 | 50 | .\" entries marked with X<> in POD. Of course, you'll have to process the |
49 | 51 | .\" output yourself in some meaningful fashion. |
50 | .ie \nF \{\ | |
52 | .\" | |
53 | .\" Avoid warning from groff about undefined register 'F'. | |
54 | .de IX | |
55 | .. | |
56 | .if !\nF .nr F 0 | |
57 | .if \nF>0 \{\ | |
51 | 58 | . de IX |
52 | 59 | . tm Index:\\$1\t\\n%\t"\\$2" |
53 | 60 | .. |
54 | . nr % 0 | |
55 | . rr F | |
56 | .\} | |
57 | .el \{\ | |
58 | . de IX | |
59 | .. | |
61 | . if !\nF==2 \{\ | |
62 | . nr % 0 | |
63 | . nr F 2 | |
64 | . \} | |
60 | 65 | .\} |
61 | 66 | .\" |
62 | 67 | .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). |
122 | 127 | .rm #[ #] #H #V #F C |
123 | 128 | .\" ======================================================================== |
124 | 129 | .\" |
125 | .IX Title "NAT-TRAVERSE-0.6 1" | |
126 | .TH NAT-TRAVERSE-0.6 1 "2012-12-24" "perl v5.10.1" "User Contributed Perl Documentation" | |
130 | .IX Title "NAT-TRAVERSE 1" | |
131 | .TH NAT-TRAVERSE 1 "2017-10-28" "perl v5.24.2" "User Contributed Perl Documentation" | |
127 | 132 | .\" For nroff, turn off justification. Always turn off hyphenation; it makes |
128 | 133 | .\" way too many mistakes in technical documents. |
129 | 134 | .if n .ad l |
130 | 135 | .nh |
131 | 136 | .SH "NAME" |
132 | nat\-traverse \- Use of UDP to traverse NAT gateways | |
137 | nat\-traverse \- NAT gateway traversal utility | |
133 | 138 | .SH "SYNOPSIS" |
134 | 139 | .IX Header "SYNOPSIS" |
135 | 140 | To create a simple text-only tunnel, use the commands |
140 | 145 | .Ve |
141 | 146 | .PP |
142 | 147 | where \f(CW40000\fR is an unused \s-1UDP\s0 port on \f(CW\*(C`left\*(C'\fR and \f(CW40001\fR is an unused port on |
143 | \&\f(CW\*(C`right\*(C'\fR. See \*(L"\s-1EXAMPLES\s0\*(R" for more. | |
148 | \&\f(CW\*(C`right\*(C'\fR. See \*(L"\s-1EXAMPLES\*(R"\s0 for more. | |
144 | 149 | .SH "VERSION" |
145 | 150 | .IX Header "VERSION" |
146 | This document describes nat-traverse v0.5. | |
151 | This document describes nat-traverse v0.7. | |
147 | 152 | .SH "DESCRIPTION" |
148 | 153 | .IX Header "DESCRIPTION" |
149 | 154 | nat-traverse establishes connections between nodes which are behind \s-1NAT\s0 |
150 | 155 | gateways, i.e. hosts which do \fInot\fR have public \s-1IP\s0 addresses. Additionally, |
151 | 156 | you can setup a small \s-1VPN\s0 by using pppd on top of nat-traverse (see |
152 | \&\*(L"\s-1EXAMPLES\s0\*(R"). nat-traverse does \fInot\fR need an external server on the | |
157 | \&\*(L"\s-1EXAMPLES\*(R"\s0). nat-traverse does \fInot\fR need an external server on the | |
153 | 158 | Internet, and it isn't necessary to reconfigure the involved \s-1NAT\s0 gateways, |
154 | 159 | either. \fInat-traverse works out-of-the-box.\fR |
155 | 160 | .PP |
156 | See \*(L"\s-1TECHNIQUE\s0\*(R" for how this is achieved. | |
161 | See \*(L"\s-1TECHNIQUE\*(R"\s0 for how this is achieved. | |
157 | 162 | .PP |
158 | 163 | Limitation: nat-traverse does not work with gateways which change the port |
159 | 164 | numbers. This is a fundamental problem of nat-traverse's design, as the changed |
160 | 165 | port numbers are (in general) not predictable. |
161 | 166 | .SH "OPTIONS" |
162 | 167 | .IX Header "OPTIONS" |
163 | .ie n .IP """\f(CIlocal_port\f(CW:\f(CIpeer\f(CW:\f(CIremote_port\f(CW"" (required)" 4 | |
168 | .ie n .IP """\fIlocal_port\fP:\fIpeer\fP:\fIremote_port\fP"" (required)" 4 | |
164 | 169 | .el .IP "\f(CW\f(CIlocal_port\f(CW:\f(CIpeer\f(CW:\f(CIremote_port\f(CW\fR (required)" 4 |
165 | 170 | .IX Item "local_port:peer:remote_port (required)" |
166 | 171 | Sets the local port to use and the remote address to connect to. |
168 | 173 | Note that you have to give the \s-1IP\s0 address or hostname of the \fI\s-1NAT\s0 gateway\fR of |
169 | 174 | the host you want to connect to, as the target host doesn't have a public \s-1IP\s0 |
170 | 175 | address. |
171 | .ie n .IP """\-\-cmd=""\f(CIpppd...\f(CW""""" 4 | |
176 | .ie n .IP """\-\-cmd=""\fIpppd...\fP""""" 4 | |
172 | 177 | .el .IP "\f(CW\-\-cmd=``\f(CIpppd...\f(CW''\fR" 4 |
173 | 178 | .IX Item "--cmd=""pppd...""" |
174 | 179 | Runs the specified command after establishing the connection. |
178 | 183 | .Sp |
179 | 184 | If no command is specified, nat-traverse will relay input from \s-1STDIN\s0 to the peer |
180 | 185 | and vice versa, i.e. nat-traverse degrades to netcat. |
181 | .ie n .IP """\-\-window=\f(CI10\f(CW""" 4 | |
186 | .ie n .IP """\-\-window=\fI10\fP""" 4 | |
182 | 187 | .el .IP "\f(CW\-\-window=\f(CI10\f(CW\fR" 4 |
183 | 188 | .IX Item "--window=10" |
184 | 189 | Sets the number of initial garbage packets to send. The default, 10, should |
185 | 190 | work with most firewalls. |
186 | .ie n .IP """\-\-timeout=\f(CI10\f(CW""" 4 | |
191 | .ie n .IP """\-\-timeout=\fI10\fP""" 4 | |
187 | 192 | .el .IP "\f(CW\-\-timeout=\f(CI10\f(CW\fR" 4 |
188 | 193 | .IX Item "--timeout=10" |
189 | 194 | Sets the maximum number of seconds to wait for an acknowledgement by the peer. |
224 | 229 | .IX Header "EXAMPLES" |
225 | 230 | .SS "Setup of a small \s-1VPN\s0 with \s-1PPP\s0" |
226 | 231 | .IX Subsection "Setup of a small VPN with PPP" |
227 | It's easy to setup a \s-1VPN\s0 (Virtual Private Network) by using the Point-to-Point | |
232 | It's easy to setup a \s-1VPN \s0(Virtual Private Network) by using the Point-to-Point | |
228 | 233 | Protocol Daemon, \f(CW\*(C`pppd\*(C'\fR: |
229 | 234 | .PP |
230 | 235 | .Vb 7 |
244 | 249 | \&\s-1UDP\s0! Furthermore, you could even add IPv6 addresses to \f(CW\*(C`ppp0\*(C'\fR by running \f(CW\*(C`ip |
245 | 250 | \&\-6 addr add...\*(C'\fR! |
246 | 251 | .PP |
247 | Note though that although this \s-1VPN\s0 \fIis\fR arguably a private network, it is \fInot\fR | |
252 | Note though that although this \s-1VPN \s0\fIis\fR arguably a private network, it is \fInot\fR | |
248 | 253 | secured in any way. You may want to use \s-1SSH\s0 to encrypt the connection. |
249 | 254 | .SS "Port Forwarding with netcat" |
250 | 255 | .IX Subsection "Port Forwarding with netcat" |
273 | 278 | reliable streams, use \s-1PPP\s0 on top of nat-traverse, as described above. |
274 | 279 | .SS "Setup of a \s-1VPN\s0 with OpenVPN" |
275 | 280 | .IX Subsection "Setup of a VPN with OpenVPN" |
276 | You can use <OpenVPN> over nat-traverse if you want to | |
277 | have a \fIsecure\fR \s-1VPN\s0. | |
281 | You can use OpenVPN <https://openvpn.net/> over nat-traverse if you want to | |
282 | have a \fIsecure\fR \s-1VPN.\s0 | |
278 | 283 | .PP |
279 | 284 | Using OpenVPN over nat-traverse requires only one change to OpenVPN's |
280 | 285 | configuration file, presuming that you don't want to use OpenVPN's multi-client |
329 | 334 | are (in general) not predictable. |
330 | 335 | .SH "SEE ALSO" |
331 | 336 | .IX Header "SEE ALSO" |
332 | .IP "<\s-1RFC\s0 1631 at http://www.ietf.org/rfc/rfc1631.txt>" 4 | |
333 | .IX Item "<RFC 1631 at http://www.ietf.org/rfc/rfc1631.txt>" | |
337 | .IP "\s-1RFC 1631\s0 at https://www.ietf.org/rfc/rfc1631.txt <https://www.ietf.org/rfc/rfc1631.txt>" 4 | |
338 | .IX Item "RFC 1631 at https://www.ietf.org/rfc/rfc1631.txt <https://www.ietf.org/rfc/rfc1631.txt>" | |
334 | 339 | The \s-1IP\s0 Network Address Translator (\s-1NAT\s0). K. Egevang, P. Francis. May 1994. |
335 | 340 | (Obsoleted by \s-1RFC3022\s0) (Status: \s-1INFORMATIONAL\s0) |
336 | .IP "<\s-1RFC\s0 3022 at http://www.ietf.org/rfc/rfc3022.txt>" 4 | |
337 | .IX Item "<RFC 3022 at http://www.ietf.org/rfc/rfc3022.txt>" | |
341 | .IP "\s-1RFC 3022\s0 at https://www.ietf.org/rfc/rfc3022.txt <https://www.ietf.org/rfc/rfc3022.txt>" 4 | |
342 | .IX Item "RFC 3022 at https://www.ietf.org/rfc/rfc3022.txt <https://www.ietf.org/rfc/rfc3022.txt>" | |
338 | 343 | Traditional \s-1IP\s0 Network Address Translator (Traditional \s-1NAT\s0). P. Srisuresh, |
339 | 344 | K. Egevang. January 2001. (Obsoletes \s-1RFC1631\s0) (Status: \s-1INFORMATIONAL\s0) |
340 | .IP "<\s-1RFC\s0 1661 at http://www.ietf.org/rfc/rfc1661.txt>" 4 | |
341 | .IX Item "<RFC 1661 at http://www.ietf.org/rfc/rfc1661.txt>" | |
345 | .IP "\s-1RFC 1661\s0 at https://www.ietf.org/rfc/rfc1661.txt <https://www.ietf.org/rfc/rfc1661.txt>" 4 | |
346 | .IX Item "RFC 1661 at https://www.ietf.org/rfc/rfc1661.txt <https://www.ietf.org/rfc/rfc1661.txt>" | |
342 | 347 | The Point-to-Point Protocol (\s-1PPP\s0). W. Simpson, Ed.. July 1994. (Obsoletes |
343 | 348 | \&\s-1RFC1548\s0) (Updated by \s-1RFC2153\s0) (Also \s-1STD0051\s0) (Status: \s-1STANDARD\s0) |
344 | .IP "<http://ppp.samba.org/>" 4 | |
345 | .IX Item "<http://ppp.samba.org/>" | |
349 | .IP "<https://ppp.samba.org/>" 4 | |
350 | .IX Item "<https://ppp.samba.org/>" | |
346 | 351 | Website of Paul's \s-1PPP\s0 Package (open source implementation of the |
347 | 352 | Point-to-Point Protocol (\s-1PPP\s0) on Linux and Solaris) |
348 | .IP "<German talk about nat-traverse at http://linide.sourceforge.net/nat\-traverse/nat\-traverse\-talk.pdf>" 4 | |
349 | .IX Item "<German talk about nat-traverse at http://linide.sourceforge.net/nat-traverse/nat-traverse-talk.pdf>" | |
353 | .IP "German talk about nat-traverse at https://www.speicherleck.de/iblech/nat\-traverse/nat\-traverse\-talk.pdf <https://www.speicherleck.de/iblech/nat-traverse/nat-traverse-talk.pdf>" 4 | |
354 | .IX Item "German talk about nat-traverse at https://www.speicherleck.de/iblech/nat-traverse/nat-traverse-talk.pdf <https://www.speicherleck.de/iblech/nat-traverse/nat-traverse-talk.pdf>" | |
350 | 355 | Dieser Vortrag zeigt, wie man einen Tunnel zwischen zwei Computern, die |
351 | 356 | beide hinter NAT-Gateways sitzen, hinbekommt. Dazu wird ein neues Programm |
352 | vorgestellt, welches sowohl einfache TastendrA\*~Xcke an die Gegenseite | |
357 | vorgestellt, welches sowohl einfache Tastendru\*:cke an die Gegenseite | |
353 | 358 | weiterleiten, als auch beliebige Programme mit Verbindungen zur Gegenseite |
354 | 359 | starten kann. Damit ist ein einfaches \s-1VPN\s0 schnell aufgebaut. |
355 | 360 | .SH "AUTHOR" |
356 | 361 | .IX Header "AUTHOR" |
357 | Copyright (C) 2005, 2012 Ingo Blechschmidt, <iblech@web.de>. | |
358 | .PP | |
359 | You may want to visit nat-traverse's Freecode project page, | |
360 | <http://freecode.com/projects/nat\-traverse/>. | |
362 | Copyright (C) 2005, 2012, 2017 Ingo Blechschmidt, <iblech@speicherleck.de>. | |
363 | .PP | |
364 | The source code repository is hosted at <https://gitlab.com/iblech/nat\-traverse>. | |
361 | 365 | .SH "LICENSE" |
362 | 366 | .IX Header "LICENSE" |
363 | 367 | This program is free software; you can redistribute it and/or modify it under |
364 | 368 | the terms of the \s-1GNU\s0 General Public License as published by the Free Software |
365 | Foundation; either version 2 of the License, or (at your option) any later | |
369 | Foundation; either version 3 of the License, or (at your option) any later | |
366 | 370 | version. |
367 | 371 | .PP |
368 | This program is distributed in the hope that it will be useful, but \s-1WITHOUT\s0 \s-1ANY\s0 | |
369 | \&\s-1WARRANTY\s0; without even the implied warranty of \s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A | |
370 | \&\s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \s-1GNU\s0 General Public License for more details. | |
372 | This program is distributed in the hope that it will be useful, but \s-1WITHOUT ANY | |
373 | WARRANTY\s0; without even the implied warranty of \s-1MERCHANTABILITY\s0 or \s-1FITNESS FOR A | |
374 | PARTICULAR PURPOSE.\s0 See the \s-1GNU\s0 General Public License for more details. | |
371 | 375 | .PP |
372 | 376 | You should have received a copy of the \s-1GNU\s0 General Public License along with |
373 | 377 | this program; if not, write to the Free Software Foundation, Inc., 51 Franklin |
374 | Street, Fifth Floor, Boston, \s-1MA\s0 02110\-1301, \s-1USA\s0. | |
378 | Street, Fifth Floor, Boston, \s-1MA 02110\-1301, USA.\s0 |